PDOStatement::bindParam() 中參數名稱的前導冒號真的是可選的嗎?
PDOStatement::bindParam() 允許您使用佔位符(例如:name)在查詢中指定命名參數。文件指出,命名佔位符的參數標識符應使用格式:name。然而,據觀察,:name 和 name 似乎都可以使用,沒有任何問題。
文件和支援的功能
PDOStatement::bindParam()文件明確提到對命名參數使用冒號前綴 (:name)。這表明官方不支援不使用冒號。
PHP 內部行為
儘管有文檔,PHP 在內部會在參數名稱中添加冒號(如果缺少冒號)。可以在 PHP 原始碼 (ext/pdo/pdo_stmt.c:363) 中觀察到此行為。這表示當您使用不含冒號的名稱時,PHP 會自動新增它。
可靠性和建議
雖然這種內部行為很方便,但值得注意的是官方文件不支持它。因此,不建議依賴此行為,並建議在使用 PDOStatement::bindParam() 時始終對命名參數使用冒號前綴。
以上是PDOStatement::bindParam() 中的前導冒號真的是可選的嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!