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 有無誤的時候,才提交執行。