博客列表 >分别创建控制器、视图、路由文件​,在控制器中模拟数据,并把数据渲染到视图中,并使用@include引用—2019年11月4日

分别创建控制器、视图、路由文件​,在控制器中模拟数据,并把数据渲染到视图中,并使用@include引用—2019年11月4日

L先生的博客
L先生的博客原创
2019年11月05日 18:35:45748浏览

分别创建控制器、视图、路由文件

在控制器中模拟数据,并把数据渲染到视图中

路由:

Route::get('/admins/home/index','Admins\Home@index');
// 在浏览器输入lv.io/admins/home/index时,会访问到控制器Admins\Home.php中的index方法。

控制器:

新建控制器:Controllers/Admin/Home.php

<?php
namespace App\Http\Controllers\Admins;
use App\Http\Controllers\Controller;
class Home extends Controller
{
    public function index(){
        $data['navs']=[
            ['title'=>'企业logo','url'=>'/admins/home/index'],
            ['title'=>'百度','url'=>'https://www.baidu.com'],
            ['title'=>'中文网','url'=>'http://www.php.cn']
        ];
        return view('Admins/Home/index',$data);
    }
}

视图:

新建视图:views/Admin/Home/index.blade.php

<p>路由是:Route::get('/admins/home/index','Admins\Home@index');</p>
    <p>访问http://lv.io/admins/home/index</p>
    <p>返回了resources下views/Admin/Home/index.php文件</p>
    @foreach($navs as $item)
        <div>{{$item['title']}}--{{$item['url']}}</div>
    @endforeach

访问lv.io/admins/home/index

结果

路由是:Route::get('/admins/home/index','Admins\Home@index');

访问http://lv.io/admins/home/index

返回了resources下views/Admin/Home/index.php

文件企业logo--/admins/home/index

百度--https://www.baidu.com

中文网--http://www.php.cn

使用@include将页面的header部分放到public/header.php中

新建:views/public/gong.blade.php

将:index.blade.php中的

@foreach($navs as $item)
        <div>{{$item['title']}}--{{$item['url']}}</div>
    @endforeach

剪切到gong.blade.php中。

在index.blade.php引用:

@include('public/gong')

类似于于引用公共头部尾部等文档。

总结:

@include('public/gong')  可以用/也可以用.内部使用了str_split()将字符串分割到数组中

使用view()函数,传递过去后会把变量清除,所以会传递至少两层的数组。

写路由时,控制器新建了文件夹,在传递参数时,必须要用'\'来分隔,'/'分隔报错。

















声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议