【问题标题】:xampp 1.8.1, php 5.4 it doesn't want to include/require a filexampp 1.8.1, php 5.4 它不想包含/需要文件
【发布时间】:2013-06-05 11:17:43
【问题描述】:

我有这样的路径:“C:/xampp/htdocs/root/my-test/defined-values.php”

我想在我的 index.php 中包含这样的内容

if (is_readable($path)) {
    require($path);    
}

这很简单,它不起作用。我在 defined-values.php 文件的顶部有 die('test') ,它根本没有被选中。 PHP 它不包含这个文件。要求路径不返回 false。所以它正在工作/

我已经设置了虚拟主机,一切,我正在尝试从 url 访问索引文件:http://my-test.ttt

它以前在旧版本的 xampp 和 php 5.3 上工作过。

可能是什么问题?任何想法? PHP.ini文件肯定有问题

【问题讨论】:

  • 1) 在路径中尝试 \ 斜杠,毕竟是 Windows 2) 尝试相对路径
  • @DavidJashi 您好,感谢您的回复,当我尝试使用斜杠 is_readable 返回 false 时,相对路径对我也不起作用。

标签: php apache xampp php-5.4


【解决方案1】:

尝试使用相对路径。这是一个更好的解决方案,这样您就可以在不更改绝对路径的情况下将您的解决方案移动到另一台服务器。

要获取当前路径,请使用dirname(__FILE__)
所以你的代码看起来像

$path = dirname(__FILE__);
require_once($path.'/otherFile.php');

如果需要的文件是当前文件下的目录,您可以再次使用 dirname():

$path = dirname(dirname(__FILE__));

【讨论】:

  • 您已经尝试过了,但它不起作用,当我打印我们的路径并将其粘贴到浏览器 url(C:\xampp\htdocs\root\my-test\defined-values. php),我可以看到我的 php 文件的纯文本。所以路径很好,但不包括在内。也许与apache设置有关?现在尝试用谷歌搜索,但没有任何运气。
  • 好吧,如果你得到文件但它没有执行它是因为你没有在“服务器”上运行它。在这里阅读我的回复:stackoverflow.com/questions/14803348/…
  • 嗨,我知道,我刚刚使用 url 中的路径来确保它是正确的,并且它是正确的。我没有像那样运行php文件。 :)
  • 好的,所以您的路径以localhost127.0.0.1 开头?
  • @Bondless,嗨,我的网址是:my-test.ttt,我要包含的路径是:C:\xampp\htdocs\root\my-test\defined-values.php并且路径没问题,但它不工作,就像它没有被包括在内。没有错误,什么都没有。
【解决方案2】:

问题在于包含路径和短打开标记,short_open_tag = On,并且包含路径应​​设置为:include_path = ".;C:\xampp\php\PEAR" 对于 windows。

【讨论】:

    猜你喜欢
    • 2012-10-22
    • 1970-01-01
    • 2011-12-15
    • 2016-09-02
    • 2013-07-01
    • 2013-10-23
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多