【发布时间】:2017-06-02 07:59:10
【问题描述】:
我有一个这样的ImageController:
$image = Image::where('id', $id)->first();
return [
'image' => $image,
'image_360' => $image['360']
];
前面几行返回给浏览器的内容如下:
{
"image": {
"id": 1,
"name": "default.jpg",
"360": 1,
},
"image_360": null
}
Image 迁移:
$table->increments('id');
$table->string('name');
$table->boolean('360');
Image 模型:
class Image extends Model
{
protected $fillable = ['name', '360'];
protected $casts = [
'360' => 'boolean'
];
}
如果$images['360'] 的值为true,为什么会返回null?
【问题讨论】:
-
您需要将其转换为
boolean。 -
如果我将其转换为
(bool)$image['360'],当预期值为true时,它会返回false -
var_dump($image['360']) 和 var_dump($image) ???
-
var_dump($image['360'])、var_dump($image[360])和var_dump($image[`360`])返回NULL -
我现在想不通。但 array_values($image)[2] 可能是一种解决方法。虽然不是很好。
标签: php object indexing eloquent laravel-5.3