PHP中使用PDO時,如果PDOStatement的實例返回HY093錯誤,通常都是參數綁定錯誤。
參數綁定錯誤通常有以下幾種:
1. 參數個數不符,請檢查PDOStatement::execute($array)中$array的元素個數與prepare方法中:param_name或?的個數是否相同,這種情況沒有任何錯誤描述,只有錯誤代碼HY093;
2. 參數名不匹配,請檢查 PDOStatement::execute($array)中$array的鍵名與prepare方法中:param_name完全一致;
3. prepare方法使用了不正確的參數名,例如':param_name'或'?',添加了多余的引號。
如果 prepare 方法使用參數名:param_name,而不是?號的話,則execute方法的參數的數組元素的順序可以任意排列。
