هل هناك طريقة لمحاكاة الأسلوب السحري __call() الخاص بـ PHP5 في PHP4؟

StackOverflow https://stackoverflow.com/questions/76328

  •  09-06-2019
  •  | 
  •  

سؤال

PHP5 لديه "طريقة سحرية" __call()يمكن تعريفها في أي فئة يتم استدعاؤها عند استدعاء طريقة غير محددة - وهي تعادل تقريبًا طريقة روبي method_missing أو بيرل AUTOLOAD.هل من الممكن القيام بشيء كهذا في الإصدارات القديمة من PHP؟

هل كانت مفيدة؟

المحلول

هذا المقال، استخدام طريقة التحميل الزائد في PHP 4 قد يساعدك ذلك على DevSed.

نصائح أخرى

الشيء الأكثر أهمية الذي كنت أفتقده هو ذلك __call موجود في PHP4، ولكن يجب عليك تمكينه على أساس كل فئة عن طريق الاتصال overload(), ، كما رأينا في مستندات PHP هنا .لسوء الحظ، تختلف تواقيع الدالة __call() بين PHP4 وPHP5، ولا يبدو أن هناك طريقة لإنشاء تطبيق سيتم تشغيله في كليهما.

أتذكر استخدامه، والقليل من البحث على Google يشير إلى ذلك

function __call($method_name, $parameters, &$return)
{
  $return_value = "You called ${method_name}!";
}

كوظيفة عضو سوف تقوم بهذه المهمة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top