如何从另一个文件中的变量列表创建数组


How to create an array from a list of variables in another file?

>我有一个php文件,它只包含一些变量及其值,如下所示:

<?php
    $first = "value1";
    $second = 'value2';
    $third = 'value3';
    $fourh = 'value4';
?>

如何动态读取此文件并将其保存在数组中?我可以通过解析文件来做到这一点,但是有没有一个php函数可以做到这一点?
最好的方法是什么?

PHP 有一个函数:get_defined_vars可能有用。

您可以像这样利用此功能:

$currentVars = get_defined_vars();
include 'variables.php';
$fileVars = array_diff(get_defined_vars(), $currentVars);

$fileVars应该是一个包含该文件中的变量绑定的数组。

正如您在评论中所说:

这个php文件是我的config.inc.php,我想通过管理面板向我的用户展示这个 - 他是我的Web应用程序的管理员

所以你需要一个更好的方法,从长远来看,这将是痛苦的。

将文件重写如下:

[values]
first = "value1"
second = "value2"
third = "value3"
fourh = "value4"

随心所欲地保存它,但我建议使用".ini"扩展名(没有必要,即使是".foo"也可以)

在你的PHP脚本中,调用$ini_array = parse_ini_file("sample.ini");,瞧,$ini_array包含你需要的东西。

parse_ini_file的手册页有更多示例和结构。看一看:http://php.net/manual/en/function.parse-ini-file.php