我有這個問題與PHP,我猜最糟糕的部分是,它的工作正常我的開發環境(php v5.4 )但在Web服務器上的測試/活動網站(php v5.2)中斷。不能使用字符串偏移作爲數組在php5.2中破解,而不是在php5.4中
所以,當我的var_dump我的$ _ POST [「FORMDATA」]我得到一個數組,看起來像這樣:
array(42) {
[0] => array(2) {
["name"] => string(2) "id";
["value"] => string(4) "3972";
}
[1] => array(2) {
["name"] => string(2) "action";
["value"] => string(4) "edit";
}
...
}
爲了區分這一點,我用這個(這個還是有一些變化):
for($i=0;$i<count($_POST["formData"]);$i++) {
$data[$_POST["formData"][$i]["name"]] = $_POST["formData"][$i]["value"];
}
所以我最終能與訪問一切:
foreach($data as $key => $value) {
echo $key . " = " . $value . "<br />";
}
,輸出:
id = 3972
action = edit
...
因此,再次,這在我的開發服務器上工作得很好,但在實時網站上斷了。我在這裏四處看了一下,發現了很多示例,但似乎很多示例都使用了不完全相同的示例。
這是什麼造成的?它是否有一些設置?這是兩個版本之間的變化嗎?我已經嘗試過其他的一些東西,但是他們都沒有工作,這在測試服務器上有點痛苦(一次上傳一個文件......)。任何簡單的解決方案,或者我必須重建我的腳本?
它是如何「打破」?你有錯誤嗎? PHP 5.2沒有任何語法錯誤。你不用5。4特定的語法,如數組解引用'function_call()['key']'例如... –
是的,我得到「不能使用字符串偏移量作爲數組」錯誤 – MDWar