PHP has the function get_defined_functions() which allows you to get a list of all the available system and user defined functions in an array. This post looks at how to use the get_defined_functions() function, the output from it and how to sort the list into alphabetical order.
Using get_defined_functions()
get_defined_functions() returns an array containing two keys: ‘internal’ and ‘user’. Each key contains a sub array containing a complete list of the available internal/system functions and the user defined functions respectively.
The following example illustrates this (the examples below assume we have two user defined functions called foo() and bar()):
print_r(get_defined_functions());
and an extract of the result:
Array ( [internal] => Array ( [0] => zend_version [1] => func_num_args [2] => func_get_arg [3] => func_get_args [4] => strlen [5] => strcmp ... [1274] => xmlwriter_write_dtd_attlist [1275] => xmlwriter_output_memory [1276] => xmlwriter_flush ) [user] => Array ( [0] => foo [1] => bar ) )
Sorting the result into alphabetical order
If you want to sort the list of functions into alphabetical order, you could do this instead:
$functions = get_defined_functions(); sort($functions['internal']); sort($functions['user']); print_r($functions);
and an extract of the result:
Array ( [internal] => Array ( [0] => _ [1] => abs [2] => acos [3] => acosh [4] => addcslashes [5] => addslashes ... [1274] => zend_logo_guid [1275] => zend_version [1276] => zlib_get_coding_type ) [user] => Array ( [0] => bar [1] => foo ) )
Conclusion
The get_defined_functions() function is a great way of getting a complete list of functions that are available on your install of PHP and from your own and 3rd party PHP libraries.