पर कॉल करने से पहले एक ओवरराइड पैरेंट विधि मौजूद है या नहीं, मैं यह सुनिश्चित करने के लिए कैसे जाउंगा कि ओवरराइड पैरेंट विधि इसे कॉल करने से पहले मौजूद है?यह जांच कर रहा है कि
public function func() {
if (function_exists('parent::func')) {
return parent::func();
}
}
हालांकि function_exists सच करने के लिए कभी नहीं का मूल्यांकन करता है:
मैं इस कोशिश की है।
method_exists हालांकि माता पिता के साथ काम नहीं करता है, धन्यवाद। किसी कारण से मुझे पहले काम करने के लिए function_exists प्राप्त करना याद है, लेकिन अब यह नहीं है ... –
उस स्थिति में, मुझे यकीन नहीं है कि आप क्या करने का प्रयास कर रहे हैं। शायद आप इसे get_parent क्लास के साथ जोड़ सकते हैं - इस तरह कुछ: method_exists (get_parent_class ($ this), 'func') हालांकि मैं गलत पेड़ को भड़क रहा हूं। – Mike
आह, वास्तव में काम करता है ... एक बार। इसे पहले माता-पिता के बाद किसी भी उच्चतम जाने के लिए लूप की आवश्यकता होती है। –