"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكنني إنشاء مثيل لفئة من متغير في PHP؟

كيف يمكنني إنشاء مثيل لفئة من متغير في PHP؟

تم النشر بتاريخ 2024-11-18
تصفح:764

How Can I Instantiate a Class from a Variable in PHP?

تنفيذ إنشاء فئة من متغير في PHP

في PHP، قد تواجه سيناريو حيث تحتاج إلى إنشاء فئة من قيمة المتغير. لنوضح ذلك بمثال:

$var = 'bar';
$bar = new {$var}Class('var for __construct()'); //$bar = new barClass('var for __construct()');

تحاول هذه الطريقة إنشاء مثيل للفئة المحددة بواسطة المتغير $var. ومع ذلك، PHP لا يدعم بناء الجملة هذا أصلاً.

نهج بديل بدون eval()

لتحقيق ذلك دون استخدام eval()، يمكنك استخدام متغير للاحتفاظ باسم الفئة:

$classname = $var . 'Class'; // e.g. $classname = 'barClass'

$bar = new $classname('var for __construct()');

نمط المصنع

غالبًا ما يتم استخدام هذه التقنية في نمط المصنع، والذي يستخدم لمركزة إنشاء الفصل وفصله من عملية الخلق. في مثل هذه السيناريوهات، ستقوم فئة المصنع بإنشاء مثيلات الفئة المطلوبة ديناميكيًا استنادًا إلى التكوين أو المعلمات الأخرى.

مزيد من الموارد

لمزيد من المعلومات حول ميزات اللغة الديناميكية ومساحات الأسماء، راجع ما يلي الموارد:

  • [مساحات الأسماء](https://www.php.net/manual/en/language.namespaces.php)
  • [ميزات اللغة الديناميكية](https:/ /www.php.net/manual/en/language.types.dynamic.php)
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3