因爲您一定已經猜到了我是新來的PHP,請耐心等待。 目前我正在編寫一些服務器端腳本,而我一直在做這件事,最近有一件事情讓我感到困擾。情況如下。我有兩個數組:一個是元素,另一個是第一個數組元素的鍵(索引)。在PHP中使用嵌套數組進行字符串解析
echo "$elements[$index[0]]";
我得到「解析錯誤:語法錯誤,意想不到的‘[’,希望‘]’用C時,我試圖通過輸出雙數組變量的元素在一個字符串讓我困擾的是: \ xampp \ htdocs \ test1.php第5行「錯誤。但是,如果只使用單個陣列,如下:
echo "$elements[0]";
它工作得很好(輸出a)。
我已經搜索了論壇,發現沒有什麼幫助。還通過What is the difference between single-quoted and double-quoted strings in PHP?閱讀了單引號和雙引號,但幾乎沒有成功。 我使用目前的解決方法是,我節省從$index
數組的值到一個變量,並用它作爲一個指數到$elements
陣列:
$key = $index[0];
echo "$elements[$key]";
工作正常,總線感覺就像一個水平間接的。
代碼:
<?php
$elements = ["a", "b", "c"];
$index = [2 , 1 , 0];
echo "$elements[$index[0]]";
?>
錯誤:
Parse error: syntax error, unexpected '[', expecting ']' in C:\xampp\htdocs\test1.php on line 5
由於任何人給他們的時間來閱讀和回答這個問題。
編輯: 謝謝大家的及時回覆。 現在我看到我太天真了,以爲我可以用一個簡單的例子模擬我確切的問題。 我處理實際的代碼是:
mysql_query("INSERT INTO pics (filename, date) VALUES($dirArray[$keys[$index]] , $timestamp)")
or die(mysql_error());
錯誤:
Parse error: syntax error, unexpected '[', expecting ']' in C:\xampp\htdocs\dbsetup.php on line 47
具有諷刺意味的是也很強,我已經創建了一個間接層與我的問題試圖解決的一個水平間接代碼:)
在編輯中使用材質開始一個新問題會更好。您也應該使用相應的'mysqli_ *'函數,因爲'mysql_ *'已被棄用。請注意,您實際上是將一個字符串傳遞給mysql_query,因此您可以使用與構造字符串相同的方式來構造該字符串以「echo」 - 即「一些文本」。 $ variable [$ index [0]]。 「更多文字」。 – 2014-09-27 13:11:11