假设我有一个非常简单的表格,并且在我的Laravel安装中的某处:
$model = DB::connection('second')->table('models');
后来我想做类似的事情:
echo $model->where('column', 1)->count();
和
echo $model->where('another_column', 0)->count();
然而第二个不起作用,因为$model
已经是其他东西了。它必须与该链接有关,但如何在不改变$model
的情况下做同样的事情?
答案 0 :(得分:4)
您可以尝试使用PHP的clone
:
$baseQuery = DB::connection('second')->table('models');
$countQuery = clone $baseQuery;
$countQuery->where('column', 1)->count();
$otherQuery = clone $baseQuery;
$otherQuery->where('another_column', 0)->count();
答案 1 :(得分:0)
如果你要做$model = $model->where('another_column', 0)->count();
,那么第二个就可以了。
当然,如果你不想改变$model
,你可以做$modelb = $model->where('another_column', 0)->count();
。