في PHP، قد تواجه سيناريو حيث تحتاج إلى إنشاء فئة من قيمة المتغير. لنوضح ذلك بمثال:
$var = 'bar'; $bar = new {$var}Class('var for __construct()'); //$bar = new barClass('var for __construct()');
تحاول هذه الطريقة إنشاء مثيل للفئة المحددة بواسطة المتغير $var. ومع ذلك، PHP لا يدعم بناء الجملة هذا أصلاً.
لتحقيق ذلك دون استخدام eval()، يمكنك استخدام متغير للاحتفاظ باسم الفئة:
$classname = $var . 'Class'; // e.g. $classname = 'barClass' $bar = new $classname('var for __construct()');
غالبًا ما يتم استخدام هذه التقنية في نمط المصنع، والذي يستخدم لمركزة إنشاء الفصل وفصله من عملية الخلق. في مثل هذه السيناريوهات، ستقوم فئة المصنع بإنشاء مثيلات الفئة المطلوبة ديناميكيًا استنادًا إلى التكوين أو المعلمات الأخرى.
لمزيد من المعلومات حول ميزات اللغة الديناميكية ومساحات الأسماء، راجع ما يلي الموارد:
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3