我目前正在尝试在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"
。这一切都有效!
答案 0 :(得分:1)
运行您的phpinfo()
并检查是否已加载扩展程序,如果没有,请检查Configuration File (php.ini) Path
和Loaded Configuration File
以查看它在哪里查找php.ini
以及加载了哪个文件。如果正确,请将您的ini中的display_startup_errors
设置为on并查看apache错误日志,以查看加载某些扩展程序是否存在问题。我猜想在加载sqlite之前你需要加载php_mbstring.dll