从php源文件中查找使用的函数


Finding used functions from php source file

基本上我想从php字符串源内容找到一个函数。我试图解析一个php文件,并读取其内容成字符串。我想找一些像:

function_name(paras)function_name()function_name(params, params)

例如,如果源包含:

echo 'Greetings'.greet("I'm Johan");
$age = date_of_birth(date());
echo 'I am ' .$age . 'years old';

,然后它会找到 greet, date_of_birth, date ,因为这些是使用的函数。

如果你想获得包含嵌套括号的参数,就像你的date_of_birth(date()),使用regex可能不是不可能的,但非常困难。

如果你认为找到函数名就足够了,那么你可以试试:

'w+(?='()

在Regexr上查看

匹配至少一个单词字符,后面跟着一个左括号。

'w包含字母、数字和下划线

(?='()是一个正面的向前看,检查(是否跟随

你需要一个正则表达式:也许像这样

preg_match("[a-zA-Z_][a-zA-Z_0-9]*(.*)",$stringToLookIn);
preg_match_all('/([a-zA-Z_]'w+)'s*'(/', $source, $match);
var_dump($match[1]);