我正在尝试使用Laravel 4对博客进行分页,我已成功使用Post::all();
,然后将其作为数组传递回控制器。
我的问题是,在我的控制器中,我调用一个模型函数,它通过数组并将自定义标签解析为html标签,如下所示:
public static function parseContent($content)
{
$find = array('~\[image="(https?://.*?\.(?:jpg|jpeg|gif|png|bmp))"\](.*?)\[/image\]~s');
$replace = array('<div class="asset"><img src="$1" alt="$3" class="image" /></div>');
return preg_replace($find, $replace, $content);
}
所以我尝试将->paginate(1);
添加到Post::All()
这不起作用,所以我尝试Post::where('content', '!=', '')->paginate(1);
似乎有效,现在->ToArray();
停止工作,我收到了错误"Indirect modification of overloaded element of Illuminate\Pagination\Paginator has no effect"
我的问题是为什么我会收到此错误?并且是自动解析为数组的paginate函数吗?
请告诉我是否需要查看更多代码。
答案 0 :(得分:1)
尝试使用$posts[$post]['content'
]再次将内容保存到数组中,这就是导致错误的原因,我使用了$post->content;
代替它现在可以正常工作。