博客列表 >laravel7 模版引擎和中间键

laravel7 模版引擎和中间键

赵大叔
赵大叔原创
2020年06月08日 17:34:47826浏览

模版引擎

php文件名***.blade.php,有点类似php基础中的模版语法。
浏览器通过路由地址访问***.blade.php文件的时候,实际访问的是经过模版引擎翻译后的另外一个文件。该文件在storage/framework/views下。
相当于增加一种语法,可根据个人喜好,选择如何使用。
模版引擎e函数,可以解析参数变量的html代码,不用e的替代方法:{!!$name!!}

  1. // 原来视图文件代码
  2. <table class="layui-table">
  3. <thead>
  4. <tr>
  5. <td>ID</td>
  6. <td>标题</td>
  7. </tr>
  8. </thead>
  9. <tbody>
  10. <?php foreach ($result as $val): ?>
  11. <tr>
  12. <td><?php echo $val['id']; ?></td>
  13. <td><?php echo $val['title']; ?></td>
  14. </tr>
  15. <?php endforeach; ?>
  16. </tbody>
  17. </table>
  18. <hr>
  19. <table class="layui-table">
  20. <thead>
  21. <tr>
  22. <td>ID</td>
  23. <td>标题</td>
  24. </tr>
  25. </thead>
  26. <tbody>
  27. @foreach ($result as $val)
  28. <tr>
  29. <td>{{$val['id']}}</td>
  30. <td>{{$val['title']}}</td>
  31. </tr>
  32. @endforeach
  33. </tbody>
  34. </table>
  35. // laravel 模版引擎翻译后视图文件代码
  36. <table class="layui-table">
  37. <thead>
  38. <tr>
  39. <td>ID</td>
  40. <td>标题</td>
  41. </tr>
  42. </thead>
  43. <tbody>
  44. <?php foreach ($result as $val): ?>
  45. <tr>
  46. <td><?php echo $val['id']; ?></td>
  47. <td><?php echo $val['title']; ?></td>
  48. </tr>
  49. <?php endforeach; ?>
  50. </tbody>
  51. </table>
  52. <hr>
  53. <table class="layui-table">
  54. <thead>
  55. <tr>
  56. <td>ID</td>
  57. <td>标题</td>
  58. </tr>
  59. </thead>
  60. <tbody>
  61. <?php $__currentLoopData = $result; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $val): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
  62. <tr>
  63. <td><?php echo e($val['id']); ?></td>
  64. <td><?php echo e($val['title']); ?></td>
  65. </tr>
  66. <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
  67. </tbody>
  68. </table>

中间键

使用命令创建中间键:php artisan make:middleware Mymiddleware

  • handle方法:必须要有。
  • handle方法参数:$request: 包含所有和请求相关的参数,Closure $next:闭包。

注册:到app/http/Kerner.php文件中按照模版添加

'mymiddle' => \App\Http\Middleware\Mymiddleware::class,

  • mymiddle: 相当于是键名
  • \App\Http\Middleware:中间键类的命名空间。

触发:在路由地址后面绑定中间键。

Route::get('/home/myblade', 'Home@myblade')->middleware('mymiddle');

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