如何让Apache2.2从PHP加载SQLite3类?

时间:2011-11-20 16:09:21

标签: windows apache sqlite php

我目前正在尝试在Windows上获得一个可用的PHP环境,但由于某种原因,Apache无法执行,例如print_r(SQLite3::version());,但是说Fatal error: Class 'SQLite3' not found in C:\Program Files (x86)\Apache2.2\htdocs\index.php on line 8,而 php.exe 打印完全正确的输出。

php.ini 中我只加载extension=php_sqlite3.dll,没有别的。在 httpd.conf 中,我得到了PHPIniDir "C:/Program Files (x86)/PHP/",这使得Apache能够处理像echo phpinfo();这样的普通php命令。

有人知道我必须做什么,所以SQLite3也可以通过Apache工作吗?

提前致谢!

编辑:

Nevremind,我自己解决了:Windows安装的默认行extension_dir = "ext"必须更改为绝对路径,在我的情况下extension_dir = "c:\Program Files (x86)\PHP\ext"。这一切都有效!

1 个答案:

答案 0 :(得分:1)

运行您的phpinfo()并检查是否已加载扩展程序,如果没有,请检查Configuration File (php.ini) PathLoaded Configuration File以查看它在哪里查找php.ini以及加载了哪个文件。如果正确,请将您的ini中的display_startup_errors设置为on并查看apache错误日志,以查看加载某些扩展程序是否存在问题。我猜想在加载sqlite之前你需要加载php_mbstring.dll