Laravel 4 Laravel 4查询给定错误
我在laravel中有一个查询,当它在表中找到数据时运行得非常好,但当它没有找到匹配的数据时会给出错误,当它没有在表中找到数据时,如何使查询不给出错误Laravel 4 Laravel 4查询给定错误,laravel-4,Laravel 4,我在laravel中有一个查询,当它在表中找到数据时运行得非常好,但当它没有找到匹配的数据时会给出错误,当它没有在表中找到数据时,如何使查询不给出错误 DB::select(DB::raw('SELECT * FROM time WHERE p_day = dayname(CURDATE()) AND CURTIME() BETWEEN p_start AND p_end'))[0]; 这是因为DB::select返回的数组中没有项。在使用索引操作符访问它之前,您必须检查它
DB::select(DB::raw('SELECT * FROM time
WHERE p_day = dayname(CURDATE())
AND CURTIME() BETWEEN p_start AND p_end'))[0];
这是因为DB::select返回的数组中没有项。在使用索引操作符访问它之前,您必须检查它的长度 试一试这样的东西:
$results = DB::select(DB::raw('SELECT * FROM time
WHERE p_day = dayname(CURDATE())
AND CURTIME() BETWEEN p_start AND p_end'));
if (!empty($results)) // or: if (count($results) > 0)
{
// Stuff was returned
$desiredResult = $results[0];
// Your hork here
}
else
{
// what you need to to if nothing is returned (no matches for your query)...
}
这是因为
DB::select
返回的数组中没有任何项。在使用索引运算符访问它之前,您必须先检查它的长度。您能给我举个例子吗?请看我的答案,希望对您有所帮助