Laravel 型のキャスト

DDD
DDDオリジナル
2024-09-28 06:13:29720ブラウズ

Laravel Type Casting

Laravel では、型キャストを使用して特定のモデル属性のデータ型を指定できます。これにより、データベースからデータを取得するときに、Laravel が属性値を指定された型に自動的にキャストします。

複数のタイプの属性キャストについては、ここで確認できます

デフォルトでは、Laravel は使用できるいくつかのキャストタイプを提供します。

  1. 整数: 属性は整数にキャストされます。
  2. Real: 属性は float にキャストされます。
  3. Float: 属性は float にキャストされます。
  4. Double: 属性は double にキャストされます。
  5. 文字列: 属性は文字列にキャストされます。
  6. ブール値: 属性はブール値にキャストされます。
  7. オブジェクト: 属性は PHP オブジェクトにキャストされます。
  8. 配列: 属性は PHP 配列にキャストされます。
  9. コレクション: 属性は Laravel コレクションにキャストされます。
  10. 日付: 属性は日付 (Y-m-d) 形式にキャストされます。
  11. DateTime: 属性は DateTime インスタンスにキャストされます。
  12. タイムスタンプ: 属性は Unix タイムスタンプ (整数) にキャストされます。
<?php
    namespace App\Models;

    use Illuminate\Database\Eloquent\Model;

    class User extends Model
    {
        /**
         * The attributes that should be cast.
         *
         * @var array
         */
        protected $casts = [
            'is_admin' => 'boolean',
            'age' => 'integer',
            'data' => 'array',
            'created_at' => 'datetime',
        ];
    }

この図では、created_at 値は DateTime インスタンスに、age 属性は整数に、data 属性は配列に、is_admin 属性はブール値に変換されます。

したがって、JSON タグ データをユーザー テーブルに保持できますが、ユーザーを取得するとすぐに PHP 配列に変換できるため、タグ テーブルを作成する必要がなくなります。

Laravel モデルで属性を操作する場合、型キャストを使用すると、属性の値にアクセスしたり変更したりするたびに変換する必要がなく、目的のデータ型を簡単に扱うことができます。


このコンテンツが気に入って、さらに素晴らしい記事をサポートしたい場合は、私にコーヒーを買ってあげることを検討してください。 ☕️?あなたのサポートは私にとって非常に重要であり、知識の流れを維持するのに役立ちます。ここでそれを行うことができます: ?コーヒー買ってきて

以上がLaravel 型のキャストの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。