php 中 PDO接口的使用

本文内容其实在PHP手册中都有,而且更加的深刻全面,这里只是个人做个笔记,呵呵

首先,先实例化pdo的对象

 



define ( ' DB_HOST ' ,      ' localhost ' );
define ( ' DB_PORT ' ,      3306 );
define ( ' DB_NAME ' ,      ' oooo ' );
define ( ' DB_CHARSET ' ,      ' utf8 ' );
define ( ' DB_USER ' ,      ' root ' );
define ( ' DB_PASSWORD ' ,       ' hicc ' );

$dsn   =   sprintf ( " mysql:host=%s;dbname=%s;port=%d;charset=%s " ,  DB_HOST ,  DB_NAME ,  DB_PORT ,  DB_CHARSET);
try {
    
$pdo   =   new  PDO( $dsn ,  DB_USER ,  DB_PASSWORD);
    
$pdo -> query( " set names  "   .  DB_CHARSET);
}
catch (PDOException  $e ){
    
error_log ( $e -> errorInfo());
}

 

注:上面的define可以用普通的变量呀,至于为什么用define,是为了有一个全局的东西。

 

 

 

 

然后:执行一语sql语句,并返回它影响的行数

 

$sql   =<<< SQL
insert into atm_service (name
, dep_id , product_id) values ( ' a ' , 1 , 2 ) , ( ' b ' , 2 , 3 )
SQL;
        
$count   =   $pdo -> exec ( $sql );

 

这里会 $count=2

 

 

 

还可以:执行一语sql语句,返回一个结果关联数组

 

$sql   =<<< SQL
select 
*  from aaaa
SQL;
$rs_r   =   $pdo -> query( $sql );
while ( $rs_aos   =   $rs_r -> fetchAll(PDO :: FETCH_ASSOC)){
    
var_dump ( $rs_aos );
}

 

 

 

 

 

 

还可以:执行一语sql语句,返回第一行第一列的值(多用于统计记录数,如分页中的总页数统计)

 

$sql   =<<< SQL
select 
count ( * ) from aaaa
SQL;
$rs_r   =   $pdo -> query( $sql );
$count   =   $rs_r -> fetch(PDO :: FETCH_COLUMN));

返回表aaaa中有多少条记录

 

 

 

 

还可以,插入一条数据,并返回刚插入数据的ID

$SQL   =   <<< SQL
insert into atm_user(name
, pass)
  values(
' zhangyufeng ' , ' baobaoke ' )
SQL;
    
$count   =   $pdo -> exec ( $SQL );
    
$user_id   =   $pdo -> lastInsertId();

---------------------------------------------------

还有很多参数和方法参考手册,而且pdo的prepare方法其实更为常用。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值