带数组的双美元变量
Double dollar variables with arrays
我正在尝试使用双美元语法访问数组的第一项,但它没有像我希望的那样工作。
<?php
$a = 'test';
$test = ['a', 'b'];
echo $$a[0];
这会说变量 t 是未定义的,因为它首先呈现 $a[0](这是一个 "t"),然后尝试访问名为 $t 的变量作为结果。
我想要的是与这些类似的东西(none 以下片段有效,它们只是我尝试过的东西,以说明这个想法)
<?php
$a = 'test';
$test = ['a', 'b'];
echo {$$a}[0];
或
<?php
$a = 'test';
$test = ['a', 'b'];
echo ${$$a}[0];
基本上,告诉 PHP $$a 部分优先。
你们非常亲密。您需要告诉 PHP 单独评估 $a
。尝试:
<?php
$a = 'test';
$test = ['a', 'b'];
echo ${$a}[0];
我正在尝试使用双美元语法访问数组的第一项,但它没有像我希望的那样工作。
<?php
$a = 'test';
$test = ['a', 'b'];
echo $$a[0];
这会说变量 t 是未定义的,因为它首先呈现 $a[0](这是一个 "t"),然后尝试访问名为 $t 的变量作为结果。
我想要的是与这些类似的东西(none 以下片段有效,它们只是我尝试过的东西,以说明这个想法)
<?php
$a = 'test';
$test = ['a', 'b'];
echo {$$a}[0];
或
<?php
$a = 'test';
$test = ['a', 'b'];
echo ${$$a}[0];
基本上,告诉 PHP $$a 部分优先。
你们非常亲密。您需要告诉 PHP 单独评估 $a
。尝试:
<?php
$a = 'test';
$test = ['a', 'b'];
echo ${$a}[0];