mysqli和mysqli_result能完成的功能 都可以使用mysqli_stmt類開完成
1.編譯一次,使用多次,類似於儲存過程
2.引數化查詢,可防止sql注入
<?php
2: header("content-type:text/html; charset=utf8");
3:
4: $mysqli = new mysqli("localhost","root","1234","test2");
5:
6:if($mysqli->connect_error)
7:
10:
11:
12:// 增
13:// $sql = "insert into userinfo(uname,uage,upwd) values(?,?,?);";
14:// 刪
15:// $sql = "delete from userinfo where id=?;";
16:// 改
17:// $sql = "update userinfo set uage=? where id=?;";
18:// 查
19:// $sql = "select top(?) uname,uage,upwd from userinfo where id>?;";
20: $sql = "select uname,uage,upwd from test2.userinfo where id>? limit ?,5";
21:
22:
23://建立預編譯物件
24: $stmt=$mysqli->prepare($sql);
25:
26://按順序給點位符繫結值(繫結引數)
27://s:string,i:int,d:double,b:二進位製大資料型別
28:
29:// 增
30:// $stmt->bind_param("sis",$uname,$uage,$upwd);
31:// $uname="阿斯頓";
32:// $uage=28;
33:// $upwd=3557;
34:
35:// 刪
36:// $stmt->bind_param("i",$id);
37:// $id=25;
38:
39:// 改
40:// $stmt->bind_param("ii",$uage,$id);
41:// $uage=15;
42:// $id=26;
43:
44:// 查
45: $stmt->bind_param("ii",$id,$limitnum);
46: $id=10;
47: $limitnum=5;
48:
49: $stmt->bind_result($uname,$uage,$upwd);
50:
51://執行
52: $result = $stmt->execute();
53:if(!$result) echo
"執行語句出錯:".$stmt->error;
54:
55:while ($stmt->fetch())
58:
59:// echo "最後一次新增的資料id:".$stmt->insert_id."\n";
60:// echo "受影響行數".$stmt->affected_rows."\n";//只返回最後一次執行sql受影響的行數
61:
62: $stmt->close();
63:
64:
65:
66: ?>
PHP擴充套件匯出類
php擴充套件匯出類方式比較簡單,可以在已經開發好的php擴充套件上直接應用,不會影響到原先的應用。只需要更改一下 c 為php擴充套件的c檔名 第一步,編寫如下 view plain copy to clipboard print?static zend function entry php my...
php擴充套件類開發例項
1 class vector2d214 15 16 generates a copy of this vector.17 return vector2d a copy of this vector.18 19public function mycopy 2023 24 25 sets this ve...
PHP擴充套件開發(2) 實現類擴充套件
在第一篇文章中,我們所開發的擴充套件是單個函式,本篇文章看一下如何開發乙個類擴充套件。假設我們要用php擴充套件實 現乙個類person,它有乙個private的成員變數 name和兩個public的例項方法getname 和setname 可以用 php 表示如下 class person pub...