اذهب إلى المحتوى
  • 0

كيفية تخزين مصفوفة Array في قاعدة البيانات في لارافيل Laravel؟

Emad Saif

السؤال

أحاول أن أقوم بتخزين مجموعة من القيم في جدول في قاعدة البيانا تعلى شكل مصفوفة، ولكن لا أعلم ما هي الطريقة المستعملة في تخزين مصفوفة في قاعدة البيانات، هل يقوم Laravel بتحويل المصفوفة إلى json على سبيل المثال؟ أم يقوم بتخزينها بطريقة مختلفة؟

سؤالي هو كيفية تخزين مصفوفة Array في قاعدة البيانات في لارافيل Laravel؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

إذا أردت تخزين المصفوفة ضمن حقل واحد في جدول ضمن قاعدة البيانات يمكنك الاستفادة من خاصية التحويل التلقائي في لارافل Casting، ضمن النموذج الخاص بالجدول نقوم بتعريف نوع التحويل للخاصية بفرض أن الخاصية تسمى data نحدد نوع التحويل كالتالي:

class MyModel extends Model {

  protected $casts = [
      'data' => 'array', // لتحويل الحقل لمصفوفة
  ];

}

بعدها يمكنك التعامل مع الخاصية بشكل طبيعي ضمن المشروع فتعين قيمة مصفوفة لتلك الخاصية ويمكنك استخراجها منها كالتالي:

$model = User::first();

// الخيار $data من نوع مصفوفة
$data = $model->data;

// يتم تحويل القيمة المسندة تلقائيًا
$model->data = ['option_1' => '...'];

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

تستطيع تخزينها ك json وعرضها ك array

داخل ملف migration:

$table->json('your_array');

داخل ال model تقوم بعمل casting

   protected $casts = [
      'your_array' => 'array'
   ];

عند إدخال البيانات:

$test_data = [
	'key_1' => 'value_1',
	'key_2' => 'value_2,
];
Your_Model::create(['your_array' => $test_data]);

وعند استخراج البيانات ستكون على شكل array

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...