我的Windows计算机上有2个版本的joomla安装了2个php。
执行应用程序时出现此错误:
PHP警告:带有消息的未捕获异常'ErrorException' 'require_once(Cache / Lite.php):无法打开流:没有这样的文件或 目录'in C:\ XAMPP \应用\的Joomla \ htdocs中\库\的Joomla \缓存\存储\ cachelite.php:79
该行是
require_once 'Cache/Lite.php';
这个名为Lite.php的文件在:
C:\ XAMPP \ PHP \梨\缓存\ Lite.php
我安装了第二个php版本,这可能会产生干扰。尽管如此,我删除了第二个php版本的PATH条目。我将文件夹复制到第二个php安装,然后我将其他php版本添加到路径中。没有帮助。
如何找出require_once ''
实际需要的位置?
或者您将如何解决此问题?
答案 0 :(得分:2)
您可以通过以下方式查看包含路径:
<?php
echo get_include_path();
?>
如果您需要更改此设置,则需要修改php.ini文件或使用set_include_path()
在设置新的include_path时,请记住包含当前的include_path:
<?php
$new_path = '/usr/lib/pear';
set_include_path(get_include_path() . PATH_SEPARATOR . $new_path);
?>
答案 1 :(得分:0)
使用echo getcwd() . "\n";
来了解脚本的当前工作目录,它将回答您的问题。更多信息PHP Manual reference of getcwd()
答案 2 :(得分:0)
来自http://www.php.net/manual/en/function.include.php
根据给定的文件路径包含文件,如果没有给出,则包含 指定的include_path。如果在。中找不到该文件 include_path,include将最终检入调用脚本自己的 失败前的目录和当前工作目录。该 如果找不到文件,include构造将发出警告;这个 与require不同的行为,会发出致命的错误。
如果定义了路径 - 是否绝对(以驱动器号开头) 或者在Windows上,或/在Unix / Linux系统上)或相对于 当前目录(以。或..开头) - include_path将是 完全忽略了。例如,如果文件名以../开头,则表示 解析器将查找父目录以查找所请求的文件。