انتقل إلى محتوى الدرس

Modern Attribute Casts Method تحويل الأنواع عبر دالة Casts

تحويل أنواع الخصائص عبر دالة casts وبناء المسترجعات والمعدلات ونطاقات الاستعلام وتوليد البيانات الاختبارية بالمصانع Factories.
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

في إصداري Laravel 11 و 12، يُعرّف تحويل أنواع الحقول داخل دالة محمية باسم casts في نموذج Eloquent بدلاً من خاصية المصفوفة القديمة. تحول هذه الدالة نصوص وأرقام قاعدة البيانات الخام تلقائياً إلى أنواع PHP غنية مثل القيم المنطقية وتواريخ Carbon والمصفوفات والتعدادات.

  • صيغة دالة التحويل (casts Method): تعيد مصفوفة ترابطية تربط اسم العمود بنوع البيانات أو كلاس التحويل المستهدف.
  • تحويل المصفوفات (array & json Casts): يحول مصفوفات PHP إلى نص JSON عند الحفظ ويعيد فكها تلقائياً عند القراءة.
  • دعم التواريخ والتعدادات (datetime & Enum): يحول النصوص الزمنية إلى كائنات Carbon وقيم الحالة إلى كائنات Enum قياسية.
مخطط معماري يوضح تحويل الأنواع والمسترجعات والمعدلات ومصانع النماذج في Eloquent في إطار العمل Laravel 12
PHP
protected function casts(): array
{
    return [
        'is_published' => 'boolean',
        'settings' => 'array',
        'published_at' => 'datetime',
    ];
}