当我尝试运行Zend_Db_Adapter_Pdo_Mysql
的构造函数时,我得到这个错误:
The PDO extension is required for this adapter but the extension is not loaded
我使用shared host
,我不能改变php.ini
。
有解决办法吗?
从改变你的主机提供商的一部分,你可以尝试以下事情:
- 使用
Zend_Db_Adapter_Mysqli
(假设mysqli
可用) - 使用
mysql_*
-函数编写自己的适配器(或使用现有的) - 尝试动态加载PDO扩展(假设它是可用的,enable_dl是开启的,safe_mode是关闭的):
dl('pdo.so');
dl('pdo_mysql.so');
尝试切换到mysql或其他适配器?
应该相当简单,根据Zend应用程序的配置,更改Db适配器值
在json类型配置中是
"db": {
"adapter": "mysqli",
...
}
数组配置:
array(
'database' => array(
'adapter' => 'Mysqli',
Ini类型:
db.adapter = "Mysqli"
当然,如果您正在通过配置创建db适配器并将其用作引导资源,则这就是全部。如果没有,只需实例化另一个db适配器:
$db = new Zend_Db_Adapter_Mysqli();