PHP数组变量的关键字

时间:2016-01-19 16:44:24

标签: php arrays

如果我使用equel或几乎是equel变量,我想要显示我的数组的值。 例如,如果我有以下数组行:[1] => G 如果我使用变量$ 1(或者甚至更好地使用变量$ arr1,我想显示'g',所以它以后不会干扰其他事情。)

这是我的代码:(我正在上传一个带有一些字母的简单.txt文件,并为每个单独的字符组成一个数组):

$linearray = array();
$workingarray = array();

while(! feof($file)) {

        $line = fgets($file);

        $line = str_split(trim("$line"));
        $linearray = array_merge($linearray, $line);

}

$workingarray[] = $linearray;

print_r($workingarray);

当我这样做时,我会得到这个结果;

  

数组([0] =>数组([0] => g [1] => g [2] => h [3] => o [4] => n   [5] => d [6] => x [7] => s [8] => v [9] =>我[10] => s [11] => h [12]   => f [13] => g [14] => f [15] => h [16] => m [17] => a [18] => g [19] =>我[20] => e [21] => d [22] => h [23] => v [24] => b [25] => v [26] => m [27] => d [28] => o [29] => m [30] => v [31] => b [32] => ))

我尝试使用以下内容使其正常工作:

extract($workingarray);
echo "$1";

但遗憾的是,这不起作用。我刚收到这个:

  

$ 1

我想接受这个:

  

如果我收到相同的效果,例如echo“$ arr1”然后收到g并且回音“$ arr2”收到h等等,那会更好。

1 个答案:

答案 0 :(得分:3)

这根本不可能:http://php.net/manual/en/language.variables.basics.php

变量名称不能以数字开头。变量名唯一允许的第一个字符是字母和下划线。

并且不要使用extract或类似的结构。他们所做的只是用不可预测/未知的垃圾乱扔你的变量命名空间 - 你可以很容易地用这个无用的垃圾覆盖一些其他的关键变量,这使得很难/不可能的错误被诊断出来。

你不能通过弥补这些新变量来节省任何时间。