2013-03-30 62 views
0

如何打印所有已定義函數的數組?
有時一個非常複雜的php包含許多其他文件,並且它有很多常用的功能,比如zencart頁面,我想查找頁面的所有功能,怎麼辦?如何打印所有已定義函數的數組?

<?php 

function hello(){} 
function world(){} 


// how to print all user defined functions? 
array(
    [0] => hello 
    [1] => world 
) 
+0

[功能php文件列表](http://stackoverflow.com/questions/2197851/function-list-of-php-file)和[PHP的可能重複:獲取PHP的變量,函數,常量從一個PHP文件](http://stackoverflow.com/questions/1858285/php-get-phps-variables-functions-constants-from-a-php-file) – jeremy

回答

3

可以打印定義的函數,如下所示:

$arr = get_defined_functions(); 

print_r($arr); 

文檔here

3

您正在尋找get_defined_functions()函數。你可以在php.net(http://php.net/manual/en/function.get-defined-functions.php)上閱讀更多關於它的信息。

從例如在php.net

<?php 
function myrow($id, $data) { 
    return "<tr><th>$id</th><td>$data</td></tr>\n"; 
} 

$arr = get_defined_functions(); 

print_r($arr); 
?> 

輸出

Array 
(
    [internal] => Array 
     (
      [0] => zend_version 
      [1] => func_num_args 
      [2] => func_get_arg 
      [3] => func_get_args 
      [4] => strlen 
      [5] => strcmp 
      [6] => strncmp 
      ... 
      [750] => bcscale 
      [751] => bccomp 
     ) 

    [user] => Array 
     (
      [0] => myrow 
     ) 

) 
2
<?php 
$functions = get_defined_functions(); 

$user_defined_functions = $functions["user"]; 
var_dump($user_defined_functions); 
?>