Laravel 基础知识
使用版本Laravel5.1。
======================================================
目录简单介绍:
app目录,核心目录,应用目录。
bootstrap目录,启动和自动加载目录。
config目录,各种配置文件。
database目录,数据库迁移文件。
resource目录,mvc中的视图文件。
========================================================
控制器目录:
\app\Http\Controllers\。
//控制器基类是:
\app\Http\Controllers\Controller.php。
//控制器的命名空间:
namespace App\Http\Controllers\模块名;
(注意项目的目录app首字母是小写,命名空间是大写)
=======================================================
Laravel框架中的route路由:
//直接输出字符串
Route::get('info',function(){
return 'info';
});
//输出视图(\Resource\views\info.blade.php)
Route::get('info',function(){
return view('info');
});
//请求方式
Route::get('info',function(){});
Route::post('info',function(){});
Route::match(['get','post'],'info',function(){});
Route::any('info',function(){});
//访问控制器
方式一(参数为字符串):
Route::get('member/info','MemberController@info');
方式二(参数为数组):
Route::get('member/info',['uses'=>'MemberController@info']);
//路由参数
Route::get('info/{id}',function($id){});//必传
Route::get('info/{id?}',function($id=null){});//非必传
Route::get('info/{id?}',function($id=null){})->where('name','[A-Za-z]+');//正则验证
//多个验证,使用数组
Route::get('info/name/{id?}',function($name='',$id=null){})
->where(['name'=>'[A-Za-z]+','id'=>'[0-9+]']);//正则验证
//路由别名
Route::get('user/member',['as'=>'member',function(){});
//路由群组
Route::group(['prefix'=>'member'],function(){
Route::get('info',function(){});//访问地址是member/info
Route::post('user',function(){});//访问地址是member/user
});
===========================================================
Laravel框架的视图命名:
名字.blade.php
(注意后缀)
=========================================================
Laravel框架的模型:
默认目录就是\app\下;
基类模型是:
use Illuminate\Database\Eloquent\Model;
=========================================================
Laravel的数据库配置:
基础的配置文件是根目录下的.env文件,
配置数据库的主机名、数据库名、用户名、密码。
在根目录下的config目录下的database.php文件中,配置数据库前缀和字符集等。
=====================================================================
可以使用dd()方法输出数据。
======================================================================
数据库原生语句的执行:
DB::select(sql语句);
DB::insert('insert into user(name,age) values (?,?)',['zhang san',18]);
DB::update('update user set age=? where name=?',[20,'zhang san']);
DB::delete(sql语句);
DB类是:
use Illuminate\Support\Facades\DB;
=====================================================================
Laravel中的查询构造器:
DB::table('user')->insert(['name'=>'haha','age'=>12]);
DB::table('user')->insertGetId(['name'=>'haha','age'=>12]);
DB::table('user')->where('id',1)->update(['name'=>'haha','age'=>12]);
使用get()获取所有数据;
使用first()获取一行数据;
使用lists()获取列数据;
使用select()获取指定的一些字段(注意每个字段都是单独的字符串);
示例:
DB::table('user')->where('id',1)->select('id','name','age')->get();
=====================================================================
同一个命名空间下的控制器,可以直接继承,不需要使用use引进来。
=====================================================================
使用config()函数获取配置:
config('文件名.参数');
=====================================================================
引入公共函数
在index.php中:
require __DIR__.'/../app/Common/functions.php';
=========================================================================
Laravel 基础知识的更多相关文章
- 关于laravel基础知识
laravel任务管理知识点 1.配置数据库环境 首先要找到congif/app.php,在这里会发现一些全局的系统设置,包括语言,时区等. 重要的是会发现前几个数组都使用了env()这个函数,这个时 ...
- laravel基础知识学习总结(路由、中间件、控制器)
路由: 路由:是将信息从源地址传递到目的地得角色 Route::get('/test',function(){ }); //分号不能丢 报错信息MethodNotAllowedHttpExcept ...
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
随机推荐
- Spring源码剖析依赖注入实现
Spring源码剖析——依赖注入实现原理 2016年08月06日 09:35:00 阅读数:31760 标签: spring源码bean依赖注入 更多 个人分类: Java 版权声明:本文为博主原 ...
- 201621123080 《Java程序设计》 第7周学习总结
1. 本周学习总结 1.1 思维导图:Java图形界面总结 2.书面作业 1. GUI中的事件处理 1.1 写出事件处理模型中最重要的几个关键词. 事件 事件源 事件监听器 事件处理方法 1.2 任意 ...
- k8s搭建WebUI--Dashborad管理界面
k8s的webUI管理界面可以更好更直观更便捷的让我们去管理我们的k8s集群. 我们知道,由于某些原因我们无法直接拉取dashboard的镜像,但是国内有些人已经将镜像下载到dockerhub中可以给 ...
- 03Qt信号与槽(2)
1. 元对象工具 元对象编译器 MOC(meta object compiler)对 C++ 文件中的类声明进行分析并产生用于初始化元对象的 C++ 代码,元对象包含全部信号和槽的名字及指向这些函 ...
- C# WPF 粘贴板记录器
工作学习中需要搜索很多资料,有建立文档对遇到过的问题进行记录,但是一来麻烦,二来有些当时认为不重要的事情,也许一段时间后认为是重要的,需要记录的,却又一时找不到,浪费时间做重复的事情.正好借着这个机会 ...
- CentOS 系统下Gitlab搭建与基本配置 以及代码备份迁移过程
GitLab 是一个开源的版本管理系统,提供了类似于 GitHub 的源代码浏览,管理缺陷和注释等功能,你可以将代码免费托管到 GitLab.com,而且不限项目数量和成员数.最吸引人的一点是,可以在 ...
- 【线程池】ExecutorService与quartz搭配出现的问题
问题描述: 使用quartz定时推送微信公众号模板消息,一分钟推送一次,定时器里面使用了一个ExecutorService线程池,大小为5个. 批量获取数据之后,全部数据都被分配到n/5的线程池里面等 ...
- Python基础——类
创建类 class people: '帮助信息:dsafdaf' #所有实例都会共享的 number=100 #构造函数,初始化的方法,当创建一个类的时候,首先会调用它 def __init__(se ...
- [译]The Python Tutorial#4. More Control Flow Tools
[译]The Python Tutorial#More Control Flow Tools 除了刚才介绍的while语句之外,Python也从其他语言借鉴了其他流程控制语句,并做了相应改变. 4.1 ...
- MYSQL安装与库的基本操作
mysql数据库 什么是数据库 # 用来存储数据的仓库 # 数据库可以在硬盘及内存中存储数据 数据库与文件存储数据区别 数据库本质也是通过文件来存储数据, 数据库的概念就是系统的管理存储数据的文件 数 ...