W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
模型中的 $casts
屬性提供了一個便利的方法來將屬性轉換為常見的數據類型。$casts
屬性應是一個數組,且數組的鍵是那些需要被轉換的屬性名稱,值則是你希望轉換的數據類型。支持轉換的數據類型有:integer
,real
,float
,double
,decimal:<digits>
,string
,boolean
,object
,array
,collection
,date
,datetime
和 timestamp
。當需要轉換為 decimal
類型時,你需要定義小數位的個數,如:(decimal:2
)。
示例,讓我們把以整數 (0
或 1
) 形式存儲在數據庫中的 is_admin
屬性轉成布爾值:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
/**
* 強制轉換的屬性
*
* @var array
*/
protected $casts = [
'is_admin' => 'boolean',
];
}
現在當你訪問 is_admin
屬性時,雖然保存在數據庫里的值是一個整數類型,但是返回值總是會被轉換成布爾值類型:
$user = App\Models\User::find(1);
if ($user->is_admin) {
//
}
注意:為
null
的屬性將不會被強制轉換。另外,永遠不要定義與關系(或屬性)同名的強制轉換。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: