深入浅出Laravel 框架,快速网站开发热门技能
PHP web开发教程4天深入浅出Laravel 框架,快速网站开发热门技能
P1 01.laravel介绍
laravel 来我
2017
官网:https://laravel.com/
中文官网:http://www.golaravel.com/
中文社区:https://laravel-china.org/
目前大部分的框架公共的特点(了解)
(1)单入口,所有的请求必须从单入口开始,主要是便于管理(统一的参数过滤)
(2)MVC的思想(分层思想,主要是为了协同开发,实现后期的维护方便)
(3)ORM操作数据库(Object Relations Model):AR 模式
注意:Laravel 框架有一个特点,所有的 URL 访问都必须事先定好路由规则。
laravel5.3 phpstudy2016
P2 02.使用composer创建laravel项目
composer kenpouse
laravel v5.5.22
composer create-project laravel/laravel --prefer-dist project-name-dir
composer create-project laravel/laravel --prefer-dist ./
composer create-project laravel/laravel --prefer-dist ./shop
composer create-project laravel/laravel=5.4.* --prefer-dist project-name-dir
用v5.4.30
设置composer阿里镜像
安装v9.5.2
laravel快速入门教程[已完结]
https://www.bilibili.com/video/BV11X4y1X7vD
php >=7.3
2023视频
P1 01.laravel搭建+路由
安装laravel=v8.6.12
composer create-project laravel/laravel=8.6.12 --prefer-dist ./laravel
入门手册 http://yuque.com/u12308025/rq5d4w/hb3lvd
learnku.com/docs/laravel/8.x/releases/9351
laravel没有默认路由
通过框架访问某个位置(控制器/视图/字符串〕必须自定义路由
.htaccess
<IfModule mod_rewrite.c>
Options +FollowSymLinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} |-d
RewriteCond %{REQUEST_FILENAME} |-f
#RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>
这个文件隐藏人口路径 文件 index.php
http://www.lv.com/index.php/di
http://www.lv.com/di
resources/views视图根目录
所有的视图文件文件后缀必须为blade.php
resources/views/ding/list.blade.php
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>首页</title>
</head>
<body>
<h1>首页</h1>
{{$name}}
<br>
{{-- 默认变量不解析标签 加!解析--}}
{!! $name !!}
<hr>
@if($scope>80)
优秀
@elseif($scope>70)
良好
@else
不及格
@endif
<br>
{{-- isset判断变量存在不--}}
@isset($abc)
abc存在
@else
abc不存在
@endisset
<br>
@empty($name)
为空
@else
不空
@endempty
</body>
</html>
P2 02.laravel视图
P3 03.laravel数据库
table 设置表名(无前缀)
get 查询全部数据
DB::raw(原生语句);
public function dbtest(){
// $list=DB::select('select * from person');
// dump($list);
// $list=DB::table('person')->get();
// dump($list);
// $list=DB::table('person')->where('id','=','1')->first();
// dump($list);
// $name=DB::table('person')->where('id','=','1')->value('name');
// dump($name);
// pluck 一列
$list=DB::table('person')->where('sex','=','男')->pluck('name');
dump($list);
}
P4 04.laravel模型
项目根目录 php artisan make:model Person
protected $table='person';
protected $primaryKey='id';
表名 和主键 一定要设置
pubsf快捷键
//循环
@forelse($list as $v)
@empty
@endforelse
请求类use Illuminate\Http\Request;
post()
all();
query(); //get请求
模型 $obj->paginate(10);
paginate(每页展示条数)分页搜索;
得到的数据集对象中就有分页链接
模版 {{$list->links()}}模版显示上下分页
05:56
查出每个是模型对象
P5 05.laravel删除流程
路由传值 Route::get('list/{id}',[Student::class,'list']);
软删除 删除字段必须存在
P6 06.laravel添加流程
laravel默认表单令牌验证
验证数据来源合法性
419 没有权限;
表单加上 @csrf
添加处理页
在接收请求时 同时对数据进行验证
基础请求类 只能验证表单令牌
验证数据 需要自定义请求类
tp自己验证(验证器) laravel自己请求验证;(请求验证)
php artisan make:request PersonRequest(请求类名)
验证失败时 会产生302重定向 跳转回表单页;
模型
//添加时设置不允许添加的字段
protected $guarded=[];
'updated_at','created_at' mysql字段datetime类型
//public $timestamps=false;//关'updated_at','created_at'
dd($result);//调试
11 10 9 8
P7 07.laravel登录流程
同一个命名空间下 不要use
composer require mews/captcha
验证码 在根目录在运行 有个composer.json 同node下的package.json
f开头的代理类
php artisan --version
检测laravel版本

浙公网安备 33010602011771号