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]);
    }

猜你喜欢

转载自www.cnblogs.com/xagg/p/12111768.html