1、替换内容
2、替换方式
例如在index.php中:
return $this -> fetch('',[],[
'www.php.cn' => 'PHP中文网',
]);
index.html文件中改为:
<p>www.php.cn</p>
替换前,网页会显示为www.php.cn
替换后,网页会变为PHP中文网
当然这样的简单文字替换并不是它的主要用途,主要用途是对于一些静态资源的替换。
接下来我们创建一个CSS文件,它是系统的静态资源文件,放在public\static文件夹中。
在该文件夹中创建一个css文件夹,在其中创建一个style.css文件。
该文件内容:
body{
background: #2ad9fa;
}
然后将这个css文件引入到模板文件中:
<link rel="stylesheet" href="/static/css/style.css">
如果要引入很多个css文件,每个都写一行,如果之后替换目录了岂不是要一个一个修改?太累了,这时就需要输出替换的方式了。
可以在idnex.php中添加一句:
'__CSS__'=>'/static/css',
然后在index.html中,改为:
<link rel="stylesheet" href="__CSS__/style.css">
之后如果要更改css目录,只要在index.php中更改__CSS__
的值就可以了。可用于主题的更改。
如果把$thid->fetch()改为view(),就是使用助手函数的方式,如下:
return view('',[],[
'www.php.cn' => 'PHP中文网',
]);
效果一样。
以上是一个模板中引入web资源文件的例子,如果项目中所有的模板都使用这些字符串替换该怎么办呢?可以把它写在配置项里。
打开convention.php文件,找到
//试图输出字符串内容替换
'view_replace_str' => [],
复制到自定义的配置文件config.php中:
//试图输出字符串内容替换
'view_replace_str' => [
'www.php.cn'=>'PHP中文网',
'__CSS__'=>'/static/css',
],
总结:模板内容替换通常是导入外部模板文件时,要做的第一件事,我们可以通过批量替换方式,大大提高页面静态资源引入的速度,提高项目的规范与可维护性。
网友评论