基本用法 视图里面包含了你应用程序所要输出的 HTML 代码,并且作为一个简便的手段分离控制器和你所要呈现的业务逻辑。视图被保存在 resources/views 目录下。 注意: 默认情况下,新创建的 Lumen 应用程序中并不包含 resources 目录。通过执行 php artisan make resources 这个 Artisan 命令可以创建此目录。 一个简单地视图可能看起来像这样: ``` <!-- View stored in resources/views/greeting.php --> <html> <body> <h1>Hello, <?php echo $name; ?></h1> </body> </html> ``` 此视图可以像这样被返回给浏览器: ``` $app->get('/', function() { return view('greeting', ['name' => 'James']); }); ``` 如上所示,view 辅助方法的第一个参数会对应到 resources/views 文件夹内视图文件的名称;第二个参数是一个能够在视图内访问的数据数组。 当然,视图文件也可以被存放在 resources/views 下的子目录内。举例来说,如果你的视图文件保存在 resources/views/admin/profile.php,可以用以下的代码来返回: ``` return view('admin.profile', $data); ``` 传递数据到视图 ``` // 使用传统的方法 $view = view('greeting')->with('name', 'Victoria'); // 使用魔术方法 $view = view('greeting')->withName('Victoria'); ``` 在上面的代码实例中,视图将可以通过 $name 来取得数据,其值为 Victoria。 还有一种方式就是直接通过 view 助手方法的第二个参数直接传递一个数组: ``` $view = view('greetings', $data); ``` 当通过这种方式传递信息时,$data 应当是一个包含键值(key/value)对的数组。接下来你就可以在视图中通过 key 获取对应的 value 了,就像 {{ $key }} 这样(假定 $data['$key'] 存在)。 确定视图是否存在 exists 方法可以用来确定某个视图是否存在: ``` if (view()->exists('emails.customer')) { // } ``` 通过文件路径返回视图 通过一个文件路径生成一个视图: ``` return view()->file($pathToFile, $data); ```