PHP网站开发实例教程 第8章 Laravel框架(下)

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

if ($avatar->isValid()) {
// 验证文件是否上传成功
// 自动生成文件名
$name = md5(microtime(true)) . '.' . $avatar->extension(); $avatar->move(‘static/upload’, $name);//移动文件到指定目录 $path = '/static/upload/' . $name; // 显示上传结果 return '<a href="' . $path . '">查看文件</a>';
✎ 8.1 常见功能开发
5 验证码
Laravel采用了服务容器的开发模式 在验证码库中有CaptchaServiceProvider(服务提供者)类 需要在config\app.php文件中将这个服务提供者注册到Laravel中
'providers' => [ ……(原有代码) /*Package Service Providers*/ Mews\Captcha\CaptchaServiceProvider::class, ……(原有代码)
PHP网站开发实例教程
第8章 Laravel框架(下)
PHP
• 常见功能开发 • 缓存操作 • 数据表的迁移和填充
• 连接查询 • 关联模型

学习目标
2 掌握文件上传、数据分页
和验证码功能的开发
掌握缓存的配置 3
和使用
掌握对响应和会话
1 控制的方法
掌握
掌握数据表的迁移
和查询方法 4
掌握连接查询、
关联模型的使用 5
}
ቤተ መጻሕፍቲ ባይዱ
return $avatar->getErrorMessage();
} return '文件上传失败';
✎ 8.1 常见功能开发
4 数据分页
Laravel在模型中提供了分页查询的方法: //Member表示模型,paginate()是分页方法,参数2表示每页显示2条数据 $data = Member::paginate(2);
] //设置别名 'aliases' => [
……(原有代码) 'Cpatcha' => Mews\Captcha\Facades\Captcha::class, ]
✎ 8.1 常见功能开发
5 验证码
在视图中显示验证码: <input type="text" name="captcha" placeholder="验证码"><br> <img src="{{ captcha_src() }}"><br>
// 字符个数 // 图片宽度 // 图片高度 // 图片质量 // 数学计算
],
✎ 8.2 缓存操作
✎ 8.1 常见功能开发
3 文件上传
Laravel中已经封装好了文件上传相关的代码,处理文件上传的关键代码如下:
if ($request->hasFile('avatar')) {
// 判断文件在请求中是否存在
$avatar = $request->file('avatar'); // 获取上传文件对象

目录
常见功能开发
☞点击查看本节相关知识点
缓存操作
☞点击查看本节相关知识点
数据表的迁移和填充
☞点击查看本小节知识架构

目录
连接查询
☞点击查看本节相关知识点
关联模型
☞点击查看本节相关知识点
✎ 8.1 常见功能开发
1 响应控制
页面跳转:
//调用redirect()方法跳转至另一个页面 return redirect('test/home'); //重定向时指定一个命名路由 return redirect()->route('home'); //重定向时传递错误提示信息 return redirect('test/edit')->withErrors(['错误提示']);
✎ 8.1 常见功能开发
1 响应控制
返回JSON响应:
public function data() {
$data = Member::all(); // 查询member表中的所有记录 return response()->json($data); }
✎ 8.1 常见功能开发
2 会话控制
在Laravel中通过Session类进行会话控制 在使用时它会自动开启Session,进行Session的写入、读取、删除等操作 Session文件默认保存在storage\framework\sessions目录
✎ 8.1 常见功能开发
4 数据分页
在视图中输出分页链接: {{ $data->links() }}
✎ 8.1 常见功能开发
4 数据分页
进一步美化分页效果,在页面中引入Bootstrap
✎ 8.1 常见功能开发
5 验证码
Laravel没有内置验证码库,可以在Packagist网站查找开源的验证码库来使用 使用Composer载入mews/captcha验证码库 composer require mews/captcha=3.0
✎ 8.1 常见功能开发
5 验证码
创建验证码配置文件,通过配置文件设置验证码的宽高,显示字符个数等信息
//创建配置文件
php artisan vendor:publish
//在配置文件中对验证码的效果进行配置
'default' => [
'length' => 9, 'width' => 120, 'height' => 36, 'quality' => 90, 'math' => false,
✎ 8.1 常见功能开发
2 会话控制
Session的常用操作:
// 写入Session,相当于$_SESSION['name'] = '张三' Session::put('name', '张三'); // 读取Session,相当于dump($_SESSION['name']); dump(Session::get('name')); // 获取所有Session dump(Session::all()); // 删除名称为name的Session dump(Session::forget('name')); // 删除全部Session Session::flush(); // 判断名称为name的Session是否存在 dump(Session::has('name'));
相关文档
最新文档