Q:

Extracting function names from a file (with or without regular expressions)

How can I extract all function names from a PHP file?
The file has many functions that look more or less like the following. Is a regular expression the best way to do it?
public function someFunction(

private function anotherOne(

A:

You could find them with a regular expression:
# The Regular Expression for Function Declarations
$functionFinder = '/function[\s\n]+(\S+)[\s\n]*\(/';
# Init an Array to hold the Function Names
$functionArray = array();
# Load the Content of the PHP File
$fileContents = file_get_contents( 'thefilename.php' );

# Apply the Regular Expression to the PHP File Contents
preg_match_all( $functionFinder , $fileContents , $functionArray );

# If we have a Result, Tidy It Up
if( count( $functionArray )>1 ){
  # Grab Element 1, as it has the Matches
  $functionArray = $functionArray[1];
}

