php使用pdo连接并查询sql数据库的方法

 更新时间:2014年12月24日 11:13:12   投稿:shichen2014   我要评论
这篇文章主要介绍了php使用pdo连接并查询sql数据库的方法,实例分析了常用的pdo连接方法与改进方法,并针对pdo技术进行了分析说明,需要的朋友可以参考下

本文实例讲述了php使用pdo连接并查询sql数据库的方法。分享给大家供大家参考。

具体实现代码如下:

复制代码 代码如下:
$login = "root";
$passwd = "mysql";
try{
  $db=new pdo('mysql:host=localhost;dbname=mysql',$login,$passwd);
  foreach($db->query('select * from test') as $row){
  print_r($row);
  }
  $db=null;
}catch(pdoexception $e){
  echo $e->getmessage();
}

再来看一个高级一点的:
复制代码 代码如下:
$dbms='mysql'; //数据库类型 oracle 用odi,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数了
$host='localhost'; //数据库主机名
$dbname='test'; //使用的数据库
$user='root'; //数据库连接用户名
$pass=''; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbname"; 
class db extends pdo {   
 public function __construct(){        
 try {             
 parent::__construct("$globals[dsn]", $globals['user'], $globals['pass']);         
 } catch (pdoexception $e) {         
  die("error: " . $e->__tostring() . "<br/>");       
  }    
  }        
 public final function query($sql){        
 try {           
  return parent::query($this->setstring($sql));        
  }catch (pdoexception $e){            
  die("error: " . $e->__tostring() . "<br/>");       
   }
   }        
   private final function setstring($sql){        
   echo "我要处理一下$sql";        
   return $sql;    }}
   $db=new db();
   $db->setattribute(pdo::attr_case, pdo::case_upper);
   foreach ($db->query('select * from xxxx_menu') as $row) {    
   print_r($row);
   }
$db->exec('delete from `xxxx_menu` where mid=43');

关于pdo说明

pod(php data object)扩展在php5中加入,php6中将默认识用pdo连接数据库,所有非pdo扩展将会在php6被从扩展中移除。该扩展提供php内置类 pdo来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连接不统一的问题。

我是配置在windows下做开发用的。

pdo的目标:

提供一种轻型、清晰、方便的 api,统一各种不同 rdbms 库的共有特性,但不排除更高级的特性,通过 php 脚本提供可选的较大程度的抽象/兼容性.

pdo的特点:

性能,pdo 从一开始就吸取了现有数据库扩展成功和失败的经验教训,因为 pdo 的代码是全新的,所以我们有机会重新开始设计性能,以利用 php 5 的最新特性.

能力

pdo 旨在将常见的数据库功能作为基础提供,同时提供对于 rdbms 独特功能的方便访问.

简单

pdo 旨在使您能够轻松使用数据库,api 不会强行介入您的代码,同时会清楚地表明每个函数调用的过程.

运行时可扩展

pdo 扩展是模块化的,使您能够在运行时为您的数据库后端加载驱动程序,而不必重新编译或重新安装整个 php 程序,例如,pdo_oci 扩展会替代 pdo 扩展实现 oracle 数据库 api,还有一些用于 mysql、postgresql、odbc 和 firebird 的驱动程序,更多的驱动程序尚在开发.

希望本文所述对大家的php数据库程序设计有所帮助。

相关文章

  • Yii中render和renderPartial的区别

    Yii中render和renderPartial的区别

    这篇文章主要介绍了Yii中render和renderPartial的区别,以下由我们在信易网络公司开发项目的时候终结出的一些经验
    2014-09-09
  • php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案

    php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案

    本文主要介绍针对PHP5.4以下版本的json_encode不兼容JSON_UNESCAPED_UNICODE的处理,需要的朋友可以参考下。
    2016-05-05
  • php获取网卡的MAC地址支持WIN/LINUX系统

    php获取网卡的MAC地址支持WIN/LINUX系统

    这篇文章主要介绍了使用php获取网卡的MAC地址支持WIN/LINUX系统,需要的朋友可以参考下
    2014-04-04
  • PHP无法访问远程mysql的问题分析及解决

    PHP无法访问远程mysql的问题分析及解决

    首先说明,远程服务器是可远程访问的,经过一番折腾最后想到了SELINUX的问题,对比了下AB两台机器,果然设置不一样!估计就是它的问题
    2013-05-05
  • php简单smarty入门程序实例

    php简单smarty入门程序实例

    这篇文章主要介绍了php简单smarty入门程序,实例分析了smarty模板的配置与使用技巧,需要的朋友可以参考下
    2015-06-06
  • php实现的mysqldb读写分离操作类示例

    php实现的mysqldb读写分离操作类示例

    这篇文章主要介绍了php实现的mysqldb读写分离操作类,结合实例形式分析了php针对数据库的读写分离操作实现技巧,并给出了该封装类的具体使用方法,需要的朋友可以参考下
    2017-02-02
  • php获取url参数方法总结

    php获取url参数方法总结

    这篇文章主要介绍了php获取url参数方法,实例总结了利用parse_url()函数解析URL的方法,需要的朋友可以参考下
    2014-11-11
  • PHP实现批量重命名某个文件夹下所有文件的方法

    PHP实现批量重命名某个文件夹下所有文件的方法

    这篇文章主要介绍了PHP实现批量重命名某个文件夹下所有文件的方法,涉及php针对文件夹下文件的遍历、字符串查找、截取及rename函数重命名文件等相关操作技巧,需要的朋友可以参考下
    2017-09-09
  • php简单静态页生成过程

    php简单静态页生成过程

    一直用smarty的cache,但感觉还是要自己做一个,才有感觉。网上有很多牛人的功能比较完备,打算先自己搞简单的再慢慢丰满。这两天做了一个比较简单的,在hi.baidu.net/alex_wang58记录一下。
    2008-03-03
  • php代码调试利器firephp安装与使用方法分析

    php代码调试利器firephp安装与使用方法分析

    这篇文章主要介绍了php代码调试利器firephp安装与使用方法,简单分析了firephp的下载、安装、测试代码调试等使用方法及相关操作技巧,需要的朋友可以参考下
    2018-08-08

最新评论