TP6中字符串替换
tp6中字符串替换,案例:前台文章展示图片在content中,前端展示方法:
<div class="article-content mt-5">
{$data.content|raw}
</div>
,替换图片的url路径
使用tp6中的动态获取器
动态获取器 可以支持对模型使用动态获取器,无需在模型类中定义获取器方法。 User::withAttr('name', function($value, $data) { return strtolower($value); })->select();
withAttr
方法支持多次调用,定义多个字段的获取器。另外注意,withAttr
方法之后不能再使用模型的查询方法,必须使用Db类的查询方法。
如果同时还在模型里面定义了相同字段的获取器,则动态获取器优先,也就是可以临时覆盖定义某个字段的获取器。
/* * 资讯详情 */ public function read(int $id) { NewsModel::where('id', $id)->inc('read_num')->update(); $data = NewsModel::withAttr('content', function($value, $data) { return str_replace('src="','src="'.$this->domain,$value); })->find($id); return view('read', ['data' => $data]); }