lavaral框架与php7,Laravel框架
1.路由:通过路由将请求发送⾄处理函数
2.Laravel是简洁优雅的PHP web开发框架,具有富于表达性且简洁的语法,易于理解且强⼤的,提供强⼤的⼯具以开发⼤型健壮的应⽤,具有验证/路由/session/缓存/数据库迁移⼯具/单元测试等常⽤的⼯具和功能
3.Laravel版本5.1和5.2需要使⽤PHP 5.5.9+
4.⽂件夹分类:app:核⼼代码,业务逻辑
Http:编写控制器⽂件夹
bootsteap:⾃动启动和加载配置
config:配置⽂件
database:数据库填充和迁移⽂件
public:⼊⼝,项⽬静态⽂件(图⽚,js等)
resources:视图及原始的资源⽂件
views:视图存放⽂件夹
storage:编译后的模板⽂件,缓存,session等
tests:单元测试⽂件夹
cendor:以来模块
5.Laravel路由:
(1)路由简介:⽤户请求转发给相应程序进⾏处理;作⽤是简历url和程序直接的映射;请求类型:get/post/put/patch/delete
(2)基本路由:Route::请求类型('⽅法名',function(){});
(3)多请求路由:指定请求类型Route::match(['请求类型','请求类型'],'⽅法名',function(){});不指定请求类型:Route::any('⽅法名',function() {});
(4)路由参数:Route::请求类型('⽂件/{参数}',function(参数){}); 带正则Route::请求类型('⽂件/{参数}',
function(参数){})->where(['参数'=>'正则',...]);
(5)路由别名(⽤route⽣成别名对应的url):Route::请求类型('⽂件',['as'=>'别名',function(){}]);
(6)路由组(针对多个组进⾏设置):Route::group(['prefix']=>'前缀名',function(){});
(7)路由中输出视图:Route::请求类型('view',function(){});
6.Laravel控制器:
(1)新建控制器:
namespace App\Http\Controllers;
class 控制器名 extends Controller{
public function ⽅法名(){
进⾏处理
}
}
(2)控制器和路由关联:
Route::请求类型('路由名称','控制器名称@⽅法名称');
Route::请求类型('路由名称',['uses'=>'控制器名称@⽅法名称']);
(3)关联后,路由特性怎么使⽤:
别名:Route::请求类型('路由名称',['uses'=>'控制器名称@⽅法名称','as'=>'别名']);
参数绑定:Route::请求类型('路由名称/{参数}',['uses'=>'控制器名称@⽅法名称']);控制器传⼊ 参数
正则限制:Route::请求类型('路由名称/{参数}',['uses'=>'控制器名称@⽅法名称'])->where('参数','限制条件');控制器传⼊ 参数7.Laravel视图(⼀个控制器对应⼀个⽂件夹)
(1)新建视图:
resources/views/⽂件夹名/⽂件名
(2)输出视图:
namespace App\Http\Controllers;
class 控制器名 extends Controller{
public function ⽅法名(){
return view('⽂件名');
}
}
加⼊变量:
namespace App\Http\Controllers;
class 控制器名 extends Controller{
public function ⽅法名(){
return view('⽂件名',['变量名称'=>'变量值',...]);
}
}
输出变量:{{变量名称}}
8.Laravel模型
(1)新建模型:
app/⽂件名
namespace App;
use Illuminate\Database\Eloquent\Model;
class 模型名称 extends Model{
public static function ⽅法名(){
进⾏处理
}
}
控制器中进⾏调⽤
9.Laravel数据库操作(DB facade(原始查)/查询构造器/Eloquent ORM)
(1)新建数据表与连接数据库
新建数据表:使⽤命令新建数据表
连接数据库:config/database.php/mysql⽅法
.env/修改数据库配置⽂件
(2)使⽤DB facade实现CURD
第⼀步: namespace App\Http\Controllers;
class 控制器名 extends Controllers{
public function ⽅法名(){
进⾏处理(打印另⼀种⽅法:dd)
DB::select('sql语句');查询(返回数组)
DB::insert('sql语句');插⼊(返回布尔值)
DB::update('sql语句');修改(返回修改⾏数)
DB::delete('sql语句');删除(返回删除⾏数)
}
}
第⼆步: Route::请求类型('路由名称',['uses'=>'控制器名称@⽅法名称']);
10.Laravel查询构造器:
(1)简介及新增数据:
简介:Laravel查询构造器提供⽅便/流畅的接⼝,⽤来建⽴及执⾏数据库查语法;使⽤PDO参数绑定,以保护应⽤程序免于SQL注⼊因此传⼊的参数不需额外转义特殊字符;基本可以满⾜所有数据库操作,在所有⽀持的数据库系统上都可以执⾏;
新增:
public function ⽅法名称(){
DB::table('表名')->insert(['字段名'=>'字段值',...]);插⼊(返回布尔值)
DB::table('表名')->insertGetId(['字段名'=>'字段值',...])插⼊获取⾃增ID
DB::table('表名')->insert(['字段名'=>'字段值',...],['字段名'=>'字段值',...],...);插⼊多条数据
}
(2)修改数据:
更新为制定内容:
php修改数据库内容
public function ⽅法名称(){
DB::table('表名')->where(条件)->update(['字段名'=>'字段值',...]);修改(返回数量)
}
public function ⽅法名称(){
DB::table('表名')->increment('字段名');修改⾃增(返回⾏数,默认1)
DB::table('表名')->increment('字段名',数量);修改⾃增(返回⾏数)
DB::table('表名')->decrement('字段名');修改⾃增(返回⾏数,默认1)
DB::table('表名')->decrement('字段名',数量);修改⾃增(返回⾏数)
加⼊条件:DB::table('表名')->where(条件)->⾃增⾃减('字段名');修改(返回⾏数)
DB::table('表名')->where(条件)->⾃增⾃减('字段名',数量,['字段名'=>'字段值']);修改多个字段(返回⾏数) }
(3)删除数据:
delete:
public function ⽅法名称(){
DB::table('表名')->where(条件)->delete();删除(返回⾏数)
}
truncate:
public function ⽅法名称(){
DB::table('表名')->truncate();清空数据表()
}
(4)查询数据:
get():
DB::table('表名')->get();//获取所有数据
first():
DB::table('表名')->first();//获取第⼀条数据
where():
DB::table('表名')->where(条件)->get();//获取要求数据
DB::table('表名')->whereRaw(多个条件)->get();//获取多个条件要求数据
pluck():
DB::table('表名')->pluck('字段名');//获取结果集中指定字段
lists(指定某个键为下标):
DB::table('表名')->lists('字段名','字段名');//获取结果集中指定字段
select():
DB::table('表名')->select('字段名','字段名',...)->get();//返回指定字段名的值
chunk():
DB::table('表名')->chunk(数量,function(变量名){});//查内容分段显⽰
count(统计表记录数):
public function ⽅法名称(){
DB::table('表名')->count();//返回数量
}
max(返回最⼤值):
public function ⽅法名称(){
DB::table('表名')->max('字段名');//返回数量
}
min(返回最⼩值):
public function ⽅法名称(){
DB::table('表名')->min('字段名');//返回数量
}
avg(返回平均数):
public function ⽅法名称(){
DB::table('表名')->avg('字段名');//返回数量
}
sum(返回和):
public function ⽅法名称(){
DB::table('表名')->sum();//返回数量
}
11.Laravel数据库操作 ORM
(1)ORM简介/模型的建⽴及查询数据:
简介:优美简洁的ActiveRecord实现,⽤来实现数据库操作;每个数据表中有⼀个与之对应的模型⽤于和数据表交互;模型的建⽴:
namespace App;
use Illuminate\Database\Eloquent\Model;
class 模型名 extends Model{
protected $table = '表名';//ID主键
protected $primaryKey = '主键名';//指定主键
}
ORM查询:
all():
public function ⽅法名称(){

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。