PHP 中 bindParam 和 bindValue 的區別


bindParam 和 bindValue 都是 PHP 的內建函式,用於透過將變數對映到 PHP 資料物件語句(也稱為 PDOStatement)中的值來訪問資料庫記錄,PDOStatement 只是資料庫查詢的抽象層。

以下是 ASP 和 ASP.NET 之間的重要區別。

序號關鍵bindParam 函式bindValue 函式
1定義bindParam 是 PHP 內建函式,用於將引數繫結到 SQL 語句中指定的變數名,以訪問資料庫記錄。bindValue 同樣是 PHP 內建函式,用於將引數的值繫結到 SQL 語句中指定的變數名。
2執行bindParam 函式僅在語句執行時執行,即呼叫 `$stmt->bindParam(':variableName', $parameter);` 時。另一方面,bindValue 在宣告時進行編譯並賦值,即 `$stmt->execute();`。
3訪問的值如上所述,bindParam 在語句執行時執行,因此語句使用與引數對映的最新值。而對於 bindValue,值在函式宣告時被賦值給引數,並由語句使用。
4型別如上所述,bindParam 函式是執行時執行型別的。另一方面,bindValue 函式是編譯時執行型別的。
5修改後的值對於 bindParam,可以修改引數值,並且語句會執行修改後的值。另一方面,對於 bindValue,無法修改引數值,語句只執行初始值。

更新於:2020年6月9日

4K+ 次瀏覽

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.