將形式爲:name
的命名參數傳遞給PDOStatement::bindParam()
時,無論是否使用前導冒號,它都可以正常工作。傳遞給PDOStatement :: bindParam()的參數名稱的前導冒號是否可選?
即無論是這樣的:
$statement->bindParam(':name', $var);
或本:
$statement->bindParam('name', $var);
似乎工作。
參數
參數標識的文檔。對於使用名爲 佔位符的準備好的語句,這將是名稱爲的參數名稱。對於使用問號佔位符的 準備好的語句,這將是參數的1索引位置 。
這是否意味着冒號可以被忽略?
我想說冒號在SQL表達式中是需要的,但是當您用'bindParam'命名(識別)名稱時不需要冒號。 PDO函數在這裏可能不那麼嚴格,因爲它可以定義它自己的接口來命名參數。 – hakre 2012-07-01 11:01:50