phppdo关闭
1、进入PHP源码包里找到pdo_mysql扩展目录
[root@php ~]# cd ./php-5.6.7/ext/pdo_mysql/
2、用phpize生成配置文件,一定要跟上–with-php-config=/usr/local/bin/php-config
[root@php pdo_odbc]# phpize
[root@php pdo_odbc]# ./configure --with-php-config=/usr/local/bin/php-config
3、make && make install安装
[root@php no-debug-non-zts-20131226]# ls
bcmath.so gd.so opcache.a pdo_odbc.so
calendar.so mcrypt.so opcache.so pdo_mysql.so
curl.so memcache.so openssl.so posix.so
4、php.ini配置加载pdo_mysql.so扩展。
extension=/usr/local/lib/php/extensions/no-debug-non-zts-20131226/pdo_mysql.so
5、重启apache,使用phpinfo()函数查看。
B. php5.4如何启用pdo
php的扩展里面都没有php_pdo.dll这个扩展,你可以网上下载这个文件放到ext文件夹里面,然后在php.ini里面搜一下
extension=php_pdo.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
把前面的;分号去掉,重启apache服务,如果没有就直接加上这三句,重启apache服务就可以了
C. linux中 php怎样开启pdo扩展
pdo扩展模是有蛮多了,如pdo_mysql也是pdo模块中的一个了,下文我们就以安装pdo_mysql为示例帮助大家介绍一下安装步骤吧,其它的pdo扩展模块安装步骤也可以一样。
假设php目录为/usr/local/php
mysql目录为/usr/local/mysql
1. 进入PHP源码包ext/pdo目录(http://hounwang.com/lesson.html)
cd ext/pdo
2. 执行/usr/local/php/bin/phpize[假设PHP的安装目录为/usr/local/php]
/usr/local/php/bin/phpize
3. 配置扩展pdo
./configure --with-php-config=/usr/local/php/bin/php-config --enable-pdo=shared
4. 编译 && 安装pdo
make && make install
成功则出现
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
Installing header files: /usr/local/php//include/php/
Installing PDO headers: /usr/local/php//include/php/ext/pdo/
说明在/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo.so文件
5. 在PHP源码包中进入pdo_mysql
cd ext/pdo_mysql
6. /usr/local/php/bin/phpize
/usr/local/php/bin/phpize
7. 配置pdo_mysql[假设Mysql的安装目录为/usr/local/mysql]
1./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
8. 编译 安装pdo_mysql
make && make install
成功则出现
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
说明的/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo_mysql.so文件
9. 在php配置文件中加上
extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so";
extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo.so";
10. 重启相关服务
/etc/init.d/php-fpm restart
更多问题到问题求助专区http://bbs.hounwang.com/
D. PHP中PDO的事务处理如何分析
事务处理具有四个特性:原子性、一致性、独立性、持久性。
并不是所有的数据库都支持事务处理的,PDO 为能够执行事务处理的数据库提供事务支持。
配置事务处理需注意:
1、关闭 PDO 的自动提交;
$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT, false);
2、开启一个事务需要的方法;
$pdo->beginTransaction(); // 开启一个事务
$pdo->commit(); // 提交事务
$pdo->rollback(); // 回滚事务
3、一般事务处理是运行在 try...catch...语句中,当事务失败时执行 catch 代码段。
php
try {
$pdo->beginTransaction(); // 开启一个事务
$row = null;
$row = $pdo->exec("xxx"); // 执行第一个 SQL
if (!$row)
throw new PDOException('提示信息或执行动作'); // 如出现异常提示信息或执行动作
$row = $pdo->exec("xxx"); // 执行第二个 SQL
if (!$row)
throw new PDOException('提示信息或执行动作');
$pdo->commit();
} catch (PDOException $e) {
$pdo->rollback(); // 执行失败,事务回滚
exit($e->getMessage());
}
?>
在事务中的 SQL 语句,如果出现错误,那么所有的 SQL 都不执行。当所有 SQL 有无误的时候,才提交执行。