我定義了幾個變量:$ day_0,$ day_1 ... $ day_8,並且需要用字符串中嵌入的那些天變量來創建一個字符串,這就是我所做的;關於php eval()函數的問題
for($i = 0; $i <=8; $i++) {
$d = 'day_'.$i;
$day = eval($($d));echo $day;
$cmd_line .= 'INPUT'.$i.'='.$quote.$day.$quote.$space;
}
但PHP總是抱怨
syntax error, unexpected '(', expecting T_VARIABLE or '$'
有什麼錯呢?謝謝。
而不是定義命名變量,您應該定義一個數組來保存它們全部。然後你可以很容易地循環訪問數組的內容。除少數情況外,通常不應使用eval。 – dqhendricks 2011-04-26 16:39:21
$ day = array(); $ day [0] ='blah'; $ day [1] ='blah'; foreach($ day as $ value){} – dqhendricks 2011-04-26 16:40:06
eval的這種用法表明您跳過了PHP手冊中的這一重要部分:http://www.php.net/manual/en/language.types.array.php – mario 2011-04-26 16:41:32