note 90432 added to function.get-called-class

From: Date: Wed, 22 Apr 2009 05:10:50 +0000
Subject: note 90432 added to function.get-called-class
Groups: php.notes 
Request: Send a blank email to php-notes+get-153567@lists.php.net to get a copy of this message
Correction: <?php function get_called_class() { $bt = debug_backtrace(); //print_r($bt); // handles self::someMethod() if ( isset($bt[2]['class']) && ('::' == $bt[2]['type']) ) { return $bt[2]['class']; } // handles call_user_func() and call_user_func_array() if ( ('call_user_func' == $bt[2]['function']) || ('call_user_func_array' == $bt[2]['function']) ) { return $bt[2]['args'][0][0]; } $lines = file($bt[1]['file']); preg_match('/([a-zA-Z0-9\_]+)::'.$bt[1]['function'].'/', $lines[$bt[1]['line']-1], $matches); return $matches[1]; } ---- Server IP: 66.207.199.35 Probable Submitter: 99.226.131.208 ---- Manual Page -- http://www.php.net/manual/en/function.get-called-class.php Edit -- https://master.php.net/note/edit/90432 Del: integrated -- https://master.php.net/note/delete/90432/integrated Del: useless -- https://master.php.net/note/delete/90432/useless Del: bad code -- https://master.php.net/note/delete/90432/bad+code Del: spam -- https://master.php.net/note/delete/90432/spam Del: non-english -- https://master.php.net/note/delete/90432/non-english Del: in docs -- https://master.php.net/note/delete/90432/in+docs Del: other reasons-- https://master.php.net/note/delete/90432 Reject -- https://master.php.net/note/reject/90432 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#153567) next »