php - Laravel Collection Get 方法未按预期工作

标签 php laravel-5.1 laravel-collection

我在 php artisantinker 中尝试了以下操作:

  >>>  $contract = \App\ContractHour::where('user_id', '=', 14)->get();
  =>  Illuminate\Database\Eloquent\Collection {#747
        all: [...]
      }

  >>>  $contract->where('day_of_wk', 1);
  => Illuminate\Database\Eloquent\Collection {#719
       all: [
         App\ContractHour {#726
           user_id: 14,
           day_of_wk: 1,
           start_time: "09:00:00",
           end_time: "05:00:00",
           break_time: "01:00:00",
           created_at: "2016-01-09 17:49:22",
           updated_at: "2016-01-09 17:49:22",
         },
       ],
     }
  >>> $contract->where('day_of_wk', 1)->get('start_time');
  => null

为什么在 start_time 明显存在的情况下 get 方法返回 null?

最佳答案

您错误地使用了 get() 方法。 它的作用是返回一个集合,如果您只需要一个符合您条件的项目,请尝试使用first()。

$contract->where('day_of_wk', 1)->first()->start_time; //outputs 09:00:00

关于php - Laravel Collection Get 方法未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34699714/

相关文章:

PHP bindParam 和多个下拉菜单

php - LIKE MySQL 搜索周围的空格

php - 在 PHP 中插入序列化数组

php - 转换 laravel 集合

Laravel 集合 : Flatten with full key name

php - 显示长文本描述输出

php - 如何将附加数据发送到 laravel.log 文件?

php - 重定向回自定义请求类 : Laravel 5 中的错误和输入

laravel - 对/autodiscover/autodiscover.xml 的请求导致 TokenMismatchException