我们如何使用1美元,2美元,反之亦然?

时间:2017-11-09 09:52:42

标签: php variables code-snippets

实际上我想在不同的变量中获取数组的值,所以我创建了这段代码:

$count = count( $t );
$count = $count - 1;//count starts with 1 and array starts with 0

for ($i=0; $i <= $count; $i++) { 
    $$i = $t[$i];//$0 = something; $2 = something; vise versa
}
// $i = 1;
// $i++;
// $$i = $2;
var_dump($1,$2,$3);

我可以创建这些变量但不能访问它们,因为$ 1不被识别为变量。

  

解析错误:第56行的语法错误,意外的'1'(T_LNUMBER),期待变量(T_VARIABLE)或'{'或'$'在C:\ xampp \ htdocs \ stackoverflow \ test.php中

我想使用$ 0,$ 1,$ 2等。

2 个答案:

答案 0 :(得分:1)

变量名不能以PHP中的数字开头:

  

变量名遵循与PHP中其他标签相同的规则。有效的变量名称以字母或下划线开头,后跟任意数量的字母,数字或下划线。作为正则表达式,它将表达为:'[a-zA-Z_ \ x7f- \ xff] [a-zA-Z0-9_ \ x7f- \ xff] *'

来源:http://php.net/manual/en/language.variables.basics.php

您应该直接使用$t数组代替使用编号变量。

答案 1 :(得分:0)

不确定您要实现的目标,但可以这样做:

$number = 1;
$$number = 'OK';

echo ${1};

将输出:

OK