laravel基础课程---8、laravel响应和视图(响应是什么)
laravel基础课程---8、laravel响应和视图(响应是什么)
一、总结
一句话总结:
就是向请求返回的响应数据(一般为html(视图),当然也可以是变量值):所有的路由及控制器必须返回某个类型的响应,并发送回用户的浏览器。
所有的路由及控制器必须返回某个类型的响应,并发送回用户的浏览器。Laravel 提供了几种不同的方法来返回响应。最基本的响应就是从路由或控制器简单的返回一个字符串。指定的字符串会被框架自动转换成 HTTP 响应:
Route::get('/', function () {
return 'Hello World';
});
从路由和控制器不仅可以返回字符串,也可以直接返回数组,这个数组将会被自动转换为 JSON 响应:
Route::get('/', function () {
return [1, 2, 3];
});
1、如果laravel响应是数组的话,显示给用户的是什么?
json:直接会转换程json
2、laravel响应向页面分配数据?
with():return view('xiang')->with($data);
return view('xiang');
$arr=array('name'=>'小镊子','love'=>"小猫咪");
$arr1=array('name'=>'小镊子1','love'=>"小猫咪1");
$arr2=array('name'=>'小镊子2','love'=>"小猫咪2");
$arr3=array('name'=>'小镊子3','love'=>"小猫咪3"); $data=array(
'brr'=>$arr,
'brr1'=>$arr1,
'brr2'=>$arr2,
'brr3'=>$arr3,
);
return view('xiang')->with(['name'=>'小镊子','love'=>"小猫咪"]);
return view('xiang')->with($data);
3、laravel如何重定向?
redirect():return redirect('home/dashboard');
Route::get('dashboard', function () {
return redirect('home/dashboard');
});
4、laravel如何响应json数据?
json():return response()->json(['name'=>'小镊子','love'=>"小猫咪"]);
5、laravel如何文件下载?
download方法:return response()->download($pathToFile, $name, $headers);
return response()->download('./Uploads/q.png'); #会报错
#需要打开php.ini 开启扩展 extension=php_fileinfo.dll
#重启服务
download
方法可以用于生成强制让用户的浏览器下载指定路径文件的响应。download
方法接受文件名称作为方法的第二个参数,此名称为用户下载文件时看见的文件名称。最后,你可以传递一个 HTTP 标头的数组作为第三个参数传入该方法:
return response()->download($pathToFile);
return response()->download($pathToFile, $name, $headers);
注意:管理文件下载的扩展包 Symfony HttpFoundation,要求下载文件必须是 ASCII 文件名。
6、lavarel响应中的文件下载报错怎么办?
需要打开php.ini 开启扩展 extension=php_fileinfo.dll
1 return response()->download('./Uploads/q.png');
2
3 #会报错
4 #需要打开php.ini 开启扩展 extension=php_fileinfo.dll
5 #重启服务
7、lavarel响应如何查看文件中的内容?
file方法:return response()->file('./Uploads/q.png');
8、laravel视图是什么?
其实就是HTML页面,把控制器中分配的数据进行处理和展示
视图的用途是用来存放应用程序中 HTML 内容,并且能够将你的控制器层(或应用逻辑层)与展现层分开。视图文件目录为 resources/views
,示例视图如下:
<!-- 此视图文件位置:resources/views/greeting.php -->
<html>
<body>
<h1>Hello, {{ $name }}</h1>
</body>
</html>
9、thinkphp基础路由视图和lavarel的区别?
lavarel中是你必须制定路由,tp中是自动给你生成路由(比如DoQuestion生成do_question的路由)
10、lavarel视图中最基础语法?
可以直接php(不推荐)<?php echo $meinv;?>
模板语法(推荐):{{}} 是定界符:{{$meinv}}
<!-- 可以直接使用PHP代码 但是不建议大家使用 -->
<?php echo $meinv;
?> {{$meinv}}
11、laravel模板解析的原理是什么?
类似smarty:替换技术(正则匹配)
smarty
模板解析的原理 {{$meinv}} 通过一些替换技术(正则匹配) 最终替换程 <?php echo $meinv;?>
12、lavarel如何向视图分配多个数据?
可直接view()带数据:return view('shitu',$data);
with():return view('shitu')->with($data);
return view('shitu')->with('name',$name)->with('qiangge',$qiangge);
return view('shitu')->with(['name'=>$name,'shuaige'=>$qiangge]); $data=array(
// 名字
"name"=>$name, // 帅哥
"shuaige"=>$qiangge );
return view('shitu',$data);
// return view('shitu')->with($data);
二、内容在总结中
laravel基础课程---8、laravel响应和视图(响应是什么)的更多相关文章
- laravel基础课程---9、视图(lavarel的模板语法和tp相比怎样)
laravel基础课程---9.视图(lavarel的模板语法和tp相比怎样) 一.总结 一句话总结: lavarel的模板语法比thinkphp好用很多:和html代码配合的更好 lavarel比t ...
- laravel基础课程---12、lavarel的ajax操作2(lavarel的ajax使用总结)
laravel基础课程---12.lavarel的ajax操作2(lavarel的ajax使用总结) 一.总结 一句话总结: 比较简单:就是js请求ajax,然后控制器获取请求参数,返回数据即可 1. ...
- laravel基础课程---10、数据库基本操作(如何使用数据库)
laravel基础课程---10.数据库基本操作(如何使用数据库) 一.总结 一句话总结: 1.链接数据库:.env环境配置里面 2.执行数据库操作:DB::table('users')->up ...
- laravel基础课程---4、Laravel基础网站结构搭建
laravel基础课程---4.Laravel基础网站结构搭建 一.总结 一句话总结: 1.搭建网站前后台路由:在路由组Route::group()中设置好命名空间和前缀 2.搭建控制器:比如1)新建 ...
- laravel基础课程---1、laravel安装及基础介绍(laravel如何安装)
laravel基础课程---1.laravel安装及基础介绍(laravel如何安装) 一.总结 一句话总结: [修改composer镜像地址].[明确laravel的安装要求].[安装指定版本的la ...
- laravel基础课程---16、数据迁移(数据库迁移是什么)
laravel基础课程---16.数据迁移(数据库迁移是什么) 一.总结 一句话总结: 是什么:数据库迁移就像是[数据库的版本控制],可以让你的团队轻松修改并共享应用程序的数据库结构. 使用场景:解决 ...
- laravel基础课程---15、分页及验证码(lavarel分页效果如何实现)
laravel基础课程---15.分页及验证码(lavarel分页效果如何实现) 一.总结 一句话总结: 数据库的paginate方法:$data=\DB::table("user" ...
- laravel基础课程---14、表单验证(lavarel如何进行表单验证)
laravel基础课程---14.表单验证(lavarel如何进行表单验证) 一.总结 一句话总结: lavarel的验证的功能比tp要[简单]且[强大]很多 直接控制器中:添加[规则数组]和[修改提 ...
- laravel基础课程---13、数据库基本操作2(lavarel数据库操作和tp对比)
laravel基础课程---13.数据库基本操作2(lavarel数据库操作和tp对比) 一.总结 一句话总结: 非常非常接近:也是分为两大类,原生SQL 和 数据库链式操作 学习方法:使用时 多看手 ...
随机推荐
- IOS知识点收集
17 duplicate symbols for architecture armv7s 用cocoapods 的时候出现,这种错误一般是由重复引用库文件引起. 原因:自己尝试添加Reachabil ...
- .net安装windows服务和生产webservice
安装windows服务 1.打开cmd对话框. 2.输入 cd WINDOWS\Microsoft.NET\Framework64\v2.0.50727\ 3.回车 4.输入InstallUtil.e ...
- 扩展MongoDB C# Driver的QueryBuilder
扩展MongoDB C# Driver的QueryBuilder 因为不想直接hardcode "ClassA.MemberA.MemberB" 这种字符串 .写了下面几个类,用于 ...
- dede列表页调用文章,其实是所有页面都可以调用,第一次应用sql标签
{dede:sql sql="SELECT aid,typeid,body,userip FROM `#@__addonarticle` where aid='6' or aid='7' o ...
- 机器学习实战之SVM
一引言: 支持向量机这部分确实很多,想要真正的去理解它,不仅仅知道理论,还要进行相关的代码编写和测试,二者想和结合,才能更好的帮助我们理解SVM这一非常优秀的分类算法 支持向量机是一种二类分类算法,假 ...
- SkipList跳表(一)基本原理
一直听说跳表这个数据结构,说要学一下的,懒癌犯了,是该治治了 为什么选择跳表 目前经常使用的平衡数据结构有:B树.红黑树,AVL树,Splay Tree(这个树好像还没有听说过),Treep(也没有听 ...
- POJ 1787 Charlie's Change
多重背包 可行性+路径记录 题意是说你要用很多其它的零钱去买咖啡.最后输出你分别要用的 1,5 ,10 .25 的钱的数量. 多重背包二进制分解.然后记录下 这个状态.最后逆向推就可以. #inclu ...
- Mysql 5.7.18 加密连接mysql_ssl_rsa_setup
MySQL 5.7.18 下载地址: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64. ...
- Centos 7.0系统服务管理
从Centos7开始,不再用sysvinit管理系统服务了,而是改用了systemd,因此对系统服务管理方法已经变更,以下简述 1.查看当前所有系统服务的状态 systemctl 2.查看指定系统服务 ...
- mysql-mongdb-redis
千万级别:mysql 千万以及亿级别:mongdb