我想我已經閱讀了許多關於該問題的主題,但仍然得到了錯誤的結果。 我有一個查詢參數數組,我想循環與foreach()
綁定參數。PDO foreach循環bindParam與參考返回錯誤的結果
foreach($aQueryParams as $key => &$value){
$stmt->bindParam($key, $value);
}
這涉及到一個INSERT
查詢和我所得到的結果是插在我的表,而不是價值的關鍵。但我相信,關鍵和價值是好的,在好的地方。 A var_dump()
在$key
和$value
上給出:firstName
爲$key
和Samy
爲&$value
。但這是插入我的表:firstName
...
而且我也嘗試與bindValue
沒有使用引用,它是相同的結果。
爲了更清楚,我給你的gitHub存儲庫的鏈接。您可以在第44行看到ClientManager.class.php中參數數組的聲明,以及foreach()循環在第97行的DBOperation.class.php中綁定參數。 https://github.com/code-climber/car_rental/blob/preparedStmt/src/car_rental/model/dao/ClientManager.class.php
我生氣了這個。
由於我看不到剩下的代碼,我假設它是這樣的副本:http://stackoverflow.com/questions/3307409/php-pass-by-reference-in-foreach。如果不是的話,你究竟想用參考書來完成什麼? – Mike
爲什麼不把參數與'execute()'中的數組綁定?我個人覺得這很麻煩。 – Rasclatt
邁克,我不認爲它是重複的,因爲我只有一個foreach()循環。我想要完成的事情很簡單。我的參數數組像':login'=>'Samy',並且我想在表中插入'Samy',這個值,但現在,這是':login',它是插入的鍵。 Rasclatt,你可以舉一個例子,因爲現在,我總是看到人們在execute()之外綁定參數。我用這個代碼的gitHub鏈接編輯我的文章。 –