मैं यह जानने का प्रयास कर रहा हूं कि PHP में ऑब्जेक्ट पर किसी भी विधि को कैसे पकड़ा जाए। मैं जादू कार्य __call
के बारे में जानता हूं, लेकिन यह केवल उन विधियों के लिए ट्रिगर किया गया है जो बुलाए गए ऑब्जेक्ट पर मौजूद नहीं हैं।PHP में ऑब्जेक्ट पर किसी भी विधि कॉल को कैसे पकड़ें?
उदाहरण के लिए मैं कुछ इस तरह है:
class Foo
{
public function bar()
{
echo 'foobar';
}
public function override($method_name,$method_args)
{
echo 'Calling method ',$method_name,'<br />';
$this->$method_name($method_args); //dirty, but working
}
}
और जब मैं ऐसा करते हैं:
Calling method bar
foobar
इस एक के बजाय
:
$foo = new Foo();
$foo->bar();
मैं इस उत्पादन चाहते
foobar
क्या ऐसा कोई तरीका है? मदद :) कृपया
धन्यवाद दोस्त, thats वास्तव में क्या मैं :) – Pirozek
ही एक मामला जरूरत है, जहां यह काम नहीं करेगा आप तरीकों कि उम्मीद 'Foo' है, जैसे' someMethod (फू $ foo) है ' –