1
我試圖將一組新的鍵和值添加到二維關聯數組中。這裏是我的陣列
myArray = array(1 => array("John", 500, "2012-09-02"),
2 => array("Mike", 105, "2012-07-01"),
3 => array("Joe", 24, "2011-12-23"),
4 => array("Alex", 65, "2012-08-30"));
我希望做的是有用戶輸入比或者增加值[1]的ID和名稱由5如果輸入的數據是myArray的,但如果它不是比我會喜歡將他們的信息作爲新數據添加到數組中,所以它應該輸出/打印第5個$ key和$ values。 if語句正常工作,並將value [1]加5,但我似乎無法得到else if語句來添加新條目。
$nameExists = FALSE;
$name = htmlspecialchars($_POST['name']);
$id = htmlspecialchars($_POST['id']);
foreach($myArray as $key => $value){
if($key == $id && $value[0] == $name){
$value[1] = $value[1] + 5;
$nameExists = TRUE;
}
else if ($nameExists === FALSE){
$newData = array($name, 1, date("Y-m-d"));
$myArray[] = $newData;
}
echo "<tr><td>".$key."</td>
<td>".$value[0]."</td>
<td>".$value[1]."</td>
<td>".$value[2]."</td></tr>";
}
任何幫助表示感謝,謝謝。
我明白你說的是什麼,但是它在循環中的原因是因爲我想從數組中打印出包括任何新值的整組值。 – Pachuca
對不起,忘了提。我試着用一個簡單的回聲來測試其他的東西,「它起作用了!」並且在給出新的輸入時打印出來的結果很好。我認爲這部分是錯誤的$ newData = array($ name,1,date(「Y-m-d」)); $ myArray [] = $ newData; – Pachuca
'$ myArray [] = $ newData;'在語法上和邏輯上都是正確的,但它不能在循環中。請使用我的完整更新代碼嘗試一下。 –