【发布时间】:2020-02-20 17:44:59
【问题描述】:
如何在 laravel 4 中根据条件进行方法链接?假设一个值不为假,那么里面的方法将链接到 if 语句之前调用的方法。
在 laravel 中可以吗?
$data = User::where('username', $somevariable );
if(isset( $somevar_again ))
{
$data->where('age', 21);
}
$data->orderBy('reg_date', 'DESC')->get();
return $data->first();
// 尝试了上面的代码,它给了我错误的结果 在codeigniter中我可以做到这一点
$this->db->select('e.*, v.name_en as v_name_en')
->from($this->table_name . ' e, ' . $this->ptc_venues . ' v');
$this->db->where('e.venue_id_en = v.id');
if(isset($search)){
$this->db->where('(v.name_en LIKE "%'.$search.'%")');
}
$this->db->limit($limit, $start);
$this->db->order_by('e.added_date_en', 'DESC');
【问题讨论】:
-
您正在调用
get(),它返回所有结果,然后调用first(),它基本上将LIMIT 1添加到生成的SQL 查询并运行它。你为什么打电话给->get()?