2014-02-18 54 views
1

我想要做explode(" ",$q[2])[1]其中$q[2]是一個讀取「問題1」的字符串,但我不斷收到錯誤,指出逗號或分號是期望的,而不是正確的方括號。爆炸「[1]」。當字符串不是數組的位置時,我可以使用這種語法,所以有沒有簡單的方法來做到這一點,而不是做一些臨時變量和爆炸?當使用數組值作爲字符串時,php爆炸不起作用

+3

這是行不通的,如果你的PHP版本是<5.4 – cornelb

+0

升級或$ FOO =爆炸(」」,$ Q [1 ]); $ foo的[1];考慮如果爆炸真的是你需要的.. –

+0

啊,謝謝。我剛搬到一個新的託管環境,忽略想到的PHP版本。 –

回答

3

在PHP 5.3或更低版本中,您無法爲表達式建立索引。你必須把它分成兩行:

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

你可以嘗試使用:

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

所以$second變量是從返回數組[1]元素。

$first // "question" 
$second // "1" 

也可以省略$first變量,所以:

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

古老的'list()':) – hek2mgl