PHP:获取PHP';从php文件中删除变量、函数和常量

PHP:获取PHP';从php文件中删除变量、函数和常量,php,file,function,include,variables,Php,File,Function,Include,Variables,有没有办法从php文件中获取用户定义的php函数、变量和常量? 以下函数不是最好的方法,因为它们都会被标记 函数/vars/constants(带有数百个php内置常量和内部php函数): 假设我有这个文件myfile.php: <?php $title = 'Sample Application'; $copyright = 'Copyright &copy; 2009'; $my_array = array('sarfraz', 'ahmed', 'chandio');

有没有办法从php文件中获取用户定义的php函数、变量和常量? 以下函数不是最好的方法,因为它们都会被标记 函数/vars/constants(带有数百个php内置常量和内部php函数):

假设我有这个文件myfile.php

<?php
$title = 'Sample Application';
$copyright = 'Copyright &copy; 2009';
    $my_array = array('sarfraz', 'ahmed', 'chandio');

define ('_CASTE', 'chandio');
define ('_COUNTRY', 'Pakistan');


function add($val1, $val2)
{
    return ($val1 + $val2);
}

function subtract($val1, $val2)
{
    return ($val1 - $val2);
}
?>

现在,我如何从该文件中获取所有变量/函数/常量,并可能将其存储在数组中


谢谢

您可能想试试PHP标记器

从外部脚本:

<?php

var_dump(token_get_all(file_get_contents('myscript.php')));

?>


调用
获取定义的函数
,然后包含文件,再次调用
获取定义的函数
,并计算差异。

获取文件中定义的所有变量

$init_var = get_defined_vars();
include_once('file_to_check.php');
$init_var2 = get_defined_vars();
unset($init_var2['init_var']);
$variables_defined_in_file = array_diff_key($init_var2, $init_var));
var_dump($variables_defined_in_file);
您应该通过替换的get_defined_vars()来重复上述代码

$init_var = get_defined_vars();
include_once('file_to_check.php');
$init_var2 = get_defined_vars();
unset($init_var2['init_var']);
$variables_defined_in_file = array_diff_key($init_var2, $init_var));
var_dump($variables_defined_in_file);
get_defined_vars()  
get_defined_functions()  
get_defined_constants()