使PEAR在XAMPP上工作(Windows上的Apache / MySQL堆栈)
时间:2020-03-05 18:53:25 来源:igfitidea点击:
我试图按照提供的说明,使用XAMPP在Windows开发服务器上安装Laconica,这是一个开放源代码微博应用程序。
该网站找不到PEAR,并引发以下错误:
Warning: require_once(PEAR.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampplite\htdocs\laconica\lib\common.php on line 31 Fatal error: require_once() [function.require]: Failed opening required 'PEAR.php' (include_path='.;\xampplite\php\pear\PEAR') in C:\xampplite\htdocs\laconica\lib\common.php on line 31
- PEAR位于
C:\ xampplite \ php \ pear
中 - phpinfo()向我显示包含路径为.. \ xampplite \ php \ pear
我究竟做错了什么?为什么不包含PEAR文件夹?
解决方案
回答
尝试添加驱动器号:
include_path='.;c:\xampplite\php\pear\PEAR'
还请验证PEAR.php是否确实存在,它可能位于\ php \中:
include_path='.;c:\xampplite\php'
回答
以每点1为准,PEAR路径为c:\ xampplite \ php \ pear \
但是,路径指向\ xampplite \ php \ pear \ PEAR
将两个放在另一个之上,我们可以清楚地看到一个太长了:
c:\ xampplite \ php \ pear \
\ xampplite \ php \ pear \ PEAR
包含路径设置为将一个梨子深入到梨树中。 pear文件夹的PEAR子文件夹包含PEAR组件。我们需要将包含路径上调一级。
(我们不需要c:顺便说一句,路径很好,只是太深了)
回答
我们需要修复include_path
系统变量以指向正确的位置。
要修复它,请编辑php.ini
文件。在该文件中,我们会发现一行内容为"include_path = ...
"。 (我们可以通过在页面上运行phpinfo()
来查找php.ini的位置。)修复行中的部分内容,即" \ xampplite \ php \ pear \ PEAR",以读取" C"。 :\ xampplite \ php \ pear`"。确保在行之前和/或者之后保留分号。
重新启动PHP,我们应该一切顺利。要在IIS中重新启动PHP,我们可以重新启动分配给站点的应用程序池,或者更好的是一起重新启动IIS。