您好,登錄后才能下訂單哦!
這篇文章主要介紹了PHP中的prepare()方法的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
php,一個嵌套的縮寫名稱,是英文超級文本預(yù)處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內(nèi)嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在服務(wù)器端執(zhí)行的嵌入HTML文檔的腳本語言,語言的風(fēng)格有類似于C語言,現(xiàn)在被很多的網(wǎng)站編程人員廣泛的運(yùn)用。
每次發(fā)送查詢語句給MySQL服務(wù)時,都必須解析該查詢的語法,確保結(jié)構(gòu)正確并能夠執(zhí)行。這是這個過程中必要的步驟,但也確實(shí)帶來了一些開銷。做一次是必要的,但是如果反復(fù)地執(zhí)行相同的查詢,批量插入多行時只改變列值,準(zhǔn)備語句會在服務(wù)器上緩存查詢的語法和執(zhí)行過程,而只在服務(wù)器和客戶端之間傳輸有變化的列值,以此來消除這些額外的開銷。
首先我們來看一下PDO::prepare
的語法:
public PDO::prepare ( string $statement , array $driver_options = array() ) : PDOStatement
$statement:必須是對目標(biāo)數(shù)據(jù)庫服務(wù)器有效的 SQL 語句模板。
$driver_options:數(shù)組包含一個或多個 key=>value 鍵值對,為返回的 PDOStatement 對象設(shè)置屬性
返回值如果數(shù)據(jù)庫服務(wù)器完成準(zhǔn)備了語句,返回PDOStatement 對象。如果數(shù)據(jù)庫服務(wù)器無法準(zhǔn)備語句,PDO::prepare() 返回 false 或拋出PDOException (取決于 錯誤處理器)。
代碼實(shí)例:
1.連接數(shù)據(jù)庫
<?php $servername="localhost"; $username="root"; $password="root123456"; $dbname="my_database"; $pdo=new PDO("mysql:host=$servername;dbname=$dbname",$username,$password); echo "連接成功"."<br>"; $pdo->setAttribute(PDO::ATTR_CASE,PDO::CASE_UPPER);
輸出:連接成功
2.使用問號參數(shù)來準(zhǔn)備SQL語句
$sql ="select * from fate where `id`=?"; $statement=$pdo->query("select * from fate where `id`=3 "); var_dump($statement->fetch()); echo "<br>"; $stmt2 = $pdo->prepare($sql); $stmt2 ->execute(array(3)); var_dump($stmt2->fetch());
輸出:array(6) {["ID"]=>string(1) "3"0]=>string(1) "3"["NAME"]=>string(7) "luncher"[1]=>string(7) "luncher"["AGE"]=>string(2) "56"[2]=>string(2) "56"} array(6) {["ID"]=>string(1) "3"[0]=>string(1) "3"["NAME"]=>string(7) "luncher"[1]=>string(7) "luncher"["AGE"]=>string(2) "56"[2]=>string(2) "56"}
3.使用命名參數(shù)來準(zhǔn)備SQL語句
$query = "insert into tp_user (id,name,gender)values(:id,:name ,:gender)"; //準(zhǔn)備語句 $stmt1 = $pdo->prepare($query); // 執(zhí)行查詢 $stmt1->execute(array('id'=> 1,':name' => '張三', ':gender' => '男')); //再次執(zhí)行 $stmt1->execute(array('id'=> 2,':name' => '李四', ':gender' => '女')); echo "插入成功!","<br>";
輸出;插入成功!
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“PHP中的prepare()方法的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。