Get a list of all available functions with PHP
Posted July 3rd, 2008 in PHP
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.
Related posts:
- How to check if a function exists in PHP (Friday, January 9th 2009)
- Method chaining with PHP (Sunday, December 7th 2008)
- How to use PHP's __autoload function (Wednesday, November 12th 2008)
- Get a list of all available constants with PHP (Thursday, July 17th 2008)
- Get a list of all available classes with PHP (Thursday, July 10th 2008)

Comments
blog comments powered by Disqus