laravel怎么把一个php文件转为html文件保存?
比如有个\resources\views\test.blade.php
文件:
@extends('layouts.app')
@section('content')
<div class="container">
{{ $article->content }}
</div>
@endsection
我想把它保存为\resources\views\html\test.html
,应该怎么做?
laravel怎么把一个php文件转为html文件保存?
比如有个\resources\views\test.blade.php
文件:
@extends('layouts.app')
@section('content')
<div class="container">
{{ $article->content }}
</div>
@endsection
我想把它保存为\resources\views\html\test.html
,应该怎么做?
html是一个静态文件,而blade是一个动态模板,后台数据不同,生成的html文件也是不同的。
不知道题主这样做的用意是什么。
如果真的需要保存模板渲染的html文件,我能想到的比较笨的方法就是写一个请求脚本,让后保存请求得到的内容为html就可以了。
这个逻辑没法一下说完,只能简而言之。
整个的动态模板的原理是用正则匹配去获得每一块的内容,例如@section这种语句,都是先获取到,然后存储至一个数组变量中。
继承语句,是先对子页面进行解析,把数据解析成变量,存储起来,再去利用@extends中的模板名称,继续递归读取并解析父模板的内容,并将数据存入变量。
最后,把所有的变量转换为了php语句,写入一个单独的php文件中,并include,就达到了最后的效果。
其实是一个动态生成并运行php文件的过程,若有兴趣可以研究一下源码。
保存的是 渲染过的html内容吧?
用 view()->make('test', ['数据带上'])->render(); 把render()的返回的html自己保存起来就行了.