中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在php中利用PDO獲取結果集

發布時間:2021-01-22 16:43:33 來源:億速云 閱讀:180 作者:Leah 欄目:開發技術

這篇文章給大家介紹怎么在php中利用PDO獲取結果集,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

fetch()方法

fetch()方法用于獲取結果集的下一行,語法如下:

mixed PDOStatement::fetch([int fetch_style][,int cursor_orientation[,int cursor_offset]]])

參數fetch_style控制結果集的返回方式

PDO::FETCH_ASSOC -- 關聯數組形式
PDO::FETCH_NUM -- 數字索引數組形式
PDO::FETCH_BOTH -- 兩者數組形式都有,這是缺省的
PDO::FETCH_OBJ -- 按照對象的形式,類似于以前的 mysql_fetch_object()
PDO::FETCH_BOUND--以布爾值的形式返回結果,同時獲取的列值賦給bindParam()方法中的指定變量。
PDO::FETCH_LAZY--以關聯數組、數字索引數組和對象3種形式返回結果

cursor_orientation:PDOStatement對象的一個滾動游標,可用于獲取指定的一行。
cursor_offset: 游標的偏移量

例如:

在PDO中通過預處理語句prepare()和execute()執行SQL查詢語句,并且應用while()語句和fetch()方法完成數據的循環輸出

$dbms='mysql';//數據庫類型
$dbName='admin';//使用的數據庫
$user='root';//數據庫連接用戶名
$pwd='password';//數據庫連接密碼
$host='localhost';//數據庫主機名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一個PDO對象,就是創建了數據庫連接對象$pdo
$query="select * from user";//需要執行的sql語句
$res=$pdo->prepare($query);//準備查詢語句
$res->execute();
while($result=$res->fetch(PDO::FETCH_ASSOC)){
echo $result['id']." ".$result['username']." ".$result['password'].'<br>';
  }
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}

運行結果為:

1 107lab e10adc3949ba59abbe56e057f20f883e
4 admin 123456
5 admin 123456

fetchAll()方法

fetchAll()方法用于獲取結果集中的所有行,其返回值是一個包含結果集中所有數據的二進制數組。語法如下:

array PDOStatement::fetchAll([int fetch_style[,int column_index]])

參數說明:

fetch_style:控制結果集中數據的顯示方式。
column_index: 字段的索引。

例如:

$dbms='mysql';//數據庫類型
$dbName='admin';//使用的數據庫
$user='root';//數據庫連接用戶名
$pwd='password';//數據庫連接密碼
$host='localhost';//數據庫主機名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一個PDO對象,就是創建了數據庫連接對象$pdo
$query="select * from user";//需要執行的sql語句
$res=$pdo->prepare($query);//準備查詢語句
$res->execute();
$result=$res->fetchAll(PDO::FETCH_ASSOC);
print_r($result);
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}

運行結果為: 

Array
(
  [0] => Array
    (
      [id] => 1
      [username] => 107lab
      [password] => e10adc3949ba59abbe56e057f20f883e
    )
  [1] => Array
    (
      [id] => 4
      [username] => admin
      [password] => 123456
    )
  [2] => Array
    (
      [id] => 5
      [username] => admin
      [password] => 123456
    )
)

此時可以通過foreach來遍歷這個二維數組

foreach($result as $val){
echo $val['username'].'<br>';
}

運行結果為:

107lab
admin
admin

fetchColumn()方法

fetchColumn()方法獲取結果集中下一行指定列的值,語法如下:

string PDOStatement::fetchColumn([int column_number])

可選參數column_number設置行中列的索引值,該值從0開始。如果省略該參數則將從第1列開始取值

例如:

通過fetchColumn()方法獲取結果集中下一行中指定列的值。(或第一列id的值)

$dbms='mysql';//數據庫類型
$dbName='admin';//使用的數據庫
$user='root';//數據庫連接用戶名
$pwd='password';//數據庫連接密碼
$host='localhost';//數據庫主機名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
  $pdo=new PDO($dsn,$user,$pwd);//初始化一個PDO對象,就是創建了數據庫連接對象$pdo
  $query="select * from user";//需要執行的sql語句
  $res=$pdo->prepare($query);//準備查詢語句
  $res->execute();
  echo $res->fetchColumn(0).'<br>';
  echo $res->fetchColumn(0).'<br>';
  echo $res->fetchColumn(0).'<br>';
}catch(Exception $e){
  die("Error!:".$e->getMessage().'<br>');
}

運行結果為:

1
4
5

關于怎么在php中利用PDO獲取結果集就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁陵县| 天津市| 惠来县| 浦城县| 柯坪县| 马尔康县| 襄樊市| 沂水县| 方城县| 分宜县| 合阳县| 酒泉市| 临海市| 嘉义县| 天门市| 阿尔山市| 海原县| 南和县| 阳新县| 韩城市| 河曲县| 赣州市| 伊春市| 全南县| 钟山县| 阳山县| 道孚县| 汉源县| 惠州市| 新余市| 芮城县| 广元市| 河西区| 乌苏市| 荥经县| 吴桥县| 洛隆县| 林甸县| 砚山县| 奉化市| 金沙县|