将数组值用作字符串时php explode不起作用

将数组值用作字符串时php explode不起作用,php,Php,我想做分解(“,$q[2])[1],其中$q[2]是一个读“问题1”的字符串,但我不断收到错误,说分解后应该是逗号或分号,而不是右方括号“[1]”。当字符串不是数组位置时,我可以使用这种语法,那么有没有一种简单的方法来代替生成一些临时变量并分解它呢?在PHP5.3或更低版本中,您不能为表达式编制索引。您必须将其分为两行: x = explode(" ",$q[2]); y = x[1]; 在PHP5.3或更低版本中,不能为表达式编制索引。您必须将其分为两行: x = explode("

我想做
分解(“,$q[2])[1]
,其中
$q[2]
是一个读“问题1”的字符串,但我不断收到错误,说分解后应该是逗号或分号,而不是右方括号“
[1]
”。当字符串不是数组位置时,我可以使用这种语法,那么有没有一种简单的方法来代替生成一些临时变量并分解它呢?

在PHP5.3或更低版本中,您不能为表达式编制索引。您必须将其分为两行:

 x = explode(" ",$q[2]);
 y = x[1];

在PHP5.3或更低版本中,不能为表达式编制索引。您必须将其分为两行:

 x = explode(" ",$q[2]);
 y = x[1];
您可以尝试以下方法:

list($first, $second) = explode(" ",$q[2]);
因此,
$second
变量是返回数组中的
[1]
元素

$first  // "question"
$second // "1"
还可以省略
$first
变量,以便:

list(, $second) = explode(" ",$q[2]);
您可以尝试以下方法:

list($first, $second) = explode(" ",$q[2]);
因此,
$second
变量是返回数组中的
[1]
元素

$first  // "question"
$second // "1"
还可以省略
$first
变量,以便:

list(, $second) = explode(" ",$q[2]);

如果您的php版本<5.4Upgrade或$foo=explode(“,$q[1]),这将不起作用$foo[1];想想如果爆炸真的是你需要的…啊,谢谢你。我刚搬到一个新的托管环境,忽略了考虑php版本。如果您的php版本<5.4Upgrade或$foo=explode(“,$q[1]),那么可能的重复将不起作用$foo[1];想想如果爆炸真的是你需要的…啊,谢谢你。我刚搬到一个新的托管环境,忽略了php版本。可能的