laravel框架中视图的基本使用方法分析

本文实例讲述了laravel框架中视图的基本使用方法。分享给大家供大家参考,具体如下:

laravel中的视图默认保存在 resources\views 目录下。在控制器中,我们通常使用 view() 方法返回一个视图文件。

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
  public function test(Request $request)
  {
    return view('test');
  }
}

对于有多层目录结构的视图,我们可以通过 (.) 点号进行分隔。

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
  public function test(Request $request)
  {
    //查找 resources\views\test\test\index.blade.php
    //或 resources\views\test\test\index.php
    return view('test.test.index');
  }
}

我们可以通过 view() 的第二个参数 或 with() 方法来给视图传递数据。

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
  public function test(Request $request)
  {
    return view('test', [
      'id' => 1,
      'name' => 'test',
    ]);
  }
}

有些时候我们需要在所有视图中共享一些变量。让这些变量在视图中都可以访问到。

常用做法是我们创建一个控制器基类,所有其他控制器继承该基类,然后在该基类的构造方法中使用 view()->share()来设置共享变量。

<?php
namespace App\Http\Controllers;
class BaseController extends Controller
{
  public function __construct()
  {
    view()->share('css_path', '');
    view()->share('img_path', '');
    view()->share('js_path', '');
  }
}

更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

(0)

相关推荐

  • Laravel实现通过blade模板引擎渲染视图

    laravel提供了blade模板引擎用于视图的渲染,在blade中可以直接使用PHP代码,并且blade最终也会被编译为php缓存起来,只有在blade文件被修改后才会重新编译,这一点可以节省开销提高应用性能.blade文件.blade.php作为视图文件存放于laravel的resource/views目录下. 1.定义模板 blade定义模板页面同创建html页面一样,只不过在适当的位置通过@section或@yield来占位,当其它页面引用模板页时将内容填充到占位的位置即可 <html>

  • Laravel 5框架学习之向视图传送数据

    我们在Routes.php中新建一个路由 复制代码 代码如下: Route::get('about', 'PagesController@about'); 在浏览器中浏览会获得一个错误,错误信息仅仅是一个提示信息,缺少细节,在生产环境 It' ok,但是开发阶段我们希望获得详细信息. 在项目的根目录找到 .env 文件,修改 复制代码 代码如下: APP_DEBUG=true 这将显示详细的错误信息,PagesController 不存在.但在生产环境一定要设置为 false 我们可以手工新建控

  • Laravel 5框架学习之向视图传送数据(进阶篇)

    我们不仅仅可以向视图传送一个数据,同样我们可以传送Array 复制代码 代码如下: public function about()     {         return view('pages.about')->with([             'first' => 'Zhang',             'last' => 'Jinglin'         ]);     } <h1>About {{ $first }} {{ $last }}</h1&g

  • laravel框架模型、视图与控制器简单操作示例

    本文实例讲述了laravel框架模型.视图与控制器简单操作.分享给大家供大家参考,具体如下: laravel 的模型 建立model文件,再项目的app目录下建立Member.php namespace App; use Illuminate\Database\Eloquent\Model; class Member extends Model { public static function getHello(){ return 'hello model'; } } 使用控制器调用 names

  • Laravel 5框架学习之路由、控制器和视图简介

    查看 app/Http/routes.php 复制代码 代码如下: Route::get('/', 'WelcomeController@index'); @是一个界定符,前面是控制器,后面是动作,表示当用户请求url / 的时候,执行控制器 WelcomeController 中的 index 方法 复制代码 代码如下: app/http/controllers/welcomecontroller.php public function index() { return view('welco

  • Laravel框架实现多个视图共享相同数据的方法详解

    本文实例讲述了Laravel框架实现多个视图共享相同数据的方法.分享给大家供大家参考,具体如下: 最近在用Laravel写一个cms,还没有完成,但是也遇到了许多难点,比如cms后台每个视图都要展示相同的导航菜单数据. 环境: PHP 7.1 Apache 2.4 MySQL 5.7 Laravel 5.4 传统方法 假设使用传统的方法,应该是在每个控制器中都调用数据,然后把数据都塞给视图. $menu = DB::table('menu')->get(); return view('xx',[

  • Laravel 5框架学习之模型、控制器、视图基础流程

    添加路由 复制代码 代码如下: Route::get('artiles', 'ArticlesController@index'); 创建控制器 复制代码 代码如下: php artisan make:controller ArticlesController --plain 修改控制器 <?php namespace App\Http\Controllers; use App\Article; use App\Http\Requests; use App\Http\Controllers\Co

  • Laravel5.5 视图 - 创建视图和数据传递示例

    创建视图 视图包含应用的 HTML 代码,并将应用的控制器逻辑和表现逻辑进行分离.视图文件存放在 resources/views 目录中.下面是一个简单的视图示例: <!-- resources/views/greeting.blade.php 视图文件 --> <html> <body> <h1>Hello, {{ $name }}</h1> </body> </html> 可以通过辅助函数 view ,返回这个视图响应

  • laravel通过a标签从视图向控制器实现传值

    这是我的laravel框架用到的参数 <a href="admin-index-control_del?id={{$val->admin_id}}" rel="external nofollow" >删除</a> 这是标准的写法 <a href="路由?id=要传的值" rel="external nofollow" >删除</a> // 其实这是要传的值是随意写的,比如说

  • Laravel 5框架学习之子视图和表单复用

    我们需要处理编辑文章的问题.当然我们可以手工添加新的路由,就像这样: 复制代码 代码如下: Route::get('/articles/{id}/edit', 'ArticleController@edit'); 让我们在命令行下使用 artisan 的 route:list 来查看我们当前的路由: 复制代码 代码如下: php artisan route:list 在符合 RESTful 的情况下,可能直接使用 laravel 的 resource 路由是一种好的选择,然我们将所有的路由都去掉

随机推荐