代码如下
$this->pdo = new PDO('mysql:host=' . $this->host . ';port=' . $this->port . ';dbname=' . $this->dbname, $this->username, $this->password, array(PDO::ATTR_PERSISTENT => true, PDO::MYSQL_ATTR_INIT_COMMAND => "set names 'utf8';"));然后报错了  Fatal error: Undefined class constant 'MYSQL_ATTR_INIT_COMMAND' 请高人具体解释一下PHP中的PDO对象是干什么用的,具体有哪些东西 本人用的是netbeans 6.8,谢谢,在线等

解决方案 »

  1.   

    未定义的类常量“MYSQL_ATTR_INIT_COMMAND”,你可以这样验证<?php
    echo PDO::MYSQL_ATTR_INIT_COMMAND;
    ?>你没有安装PDO扩展(没安装扩展似乎要提示没有PDO类)。至于PDO的作用自己看手册。http://php.net/manual/en/book.pdo.php
      

  2.   

     PHP数据对象(PDO)扩展定义了一个轻型的一致的访问数据库的接口.每个实现了PDO接口的驱动程序像一般的扩展函数一样展示数据库相关的特性.不能用PDO函数本身执行任何数据库函数,必须使用数据库相关的驱动程序来访问数据库服务器. 
         PDO提供了一个数据访问抽象层,意思是不需要知道正在使用什么数据库,就可以用同样的函数发布查询和检索数据. 
         安装如果使用5.1.x以上版本,PDO已经包括在其中了.在运行PHP配置时自动包括进来,推荐作为共享库构建PDO 
      ./configure --with-zlib --enable-pdo=shared 
    安装了PDO共享模块后配置php.ini文件,使PHP运行使自动加载PDO,同时要加载数据库相关的驱动程序确保把它添加到PDO模块extension=pdo.so 行后.加载数据库相关的扩展前首先必须初始化PDO,如静态的构建此模块,可以跳过这一步.php.ini中将这一句的注释掉
    extension=pdo.so