php file_get_contents returns false


php file_get_contents returns false

我正在尝试通过 API/Brigde/其他任何东西包含来自自己服务器的一些代码......

    class ZKBrigde {
    private $_url;
    public function __construct() {
        $host = $_SERVER['HTTP_HOST'];
        $script = $_SERVER['SCRIPT_NAME'];
        $script = explode('/', $script);
        array_pop($script);
        $this->_url = "http://" . $host . implode('/', $script) . '/zk/';
    }

在这里,我正在寻找目标框架的主网址。

在请求 im 中,使用 this(例如,$items 是一个整数):

return file_get_contents($this->_url . "brigde/acp/page/changelog/$items");

首先,这奏效了。在某些情况下,如果我的代码中有错误,它不起作用,返回 false。好的,我已经修复了错误。

现在,更改了后端的一些代码,它不起作用。如果我在浏览器中输入 URL,我会得到所需的结果,没有错误。有了这个,现在我总是得到结果"FALSE"。

如何检查出了什么问题?有什么提示可以让它变得更好吗?

(它应该是我的CMS的API/Brigde)

LG., Kai

试试这个:

    $this->_url = trim("http://" . $host . implode('/', $script) . '/zk/');

并尝试URL是否清晰且格式良好!

class ZKBrigde {
private $_url;
public function __construct() {
    $host = $_SERVER['HTTP_HOST'];
    $script = $_SERVER['SCRIPT_NAME'];
    $script = explode('/', $script);
    array_pop($script);
    $this->_url = trim("http://" . $host . implode('/', $script) . '/zk/');
    $open = open("test.txt", "w");fwrite($open, $this->_url);fclose($open);
}

测试中查看.txt当您测试脚本时。

根据 PHP 的文档,如果你的路径有特殊字符并且你试图打开一个 URI,那么你需要使用 urlencode() 函数。您的路径有特殊字符吗?为了安全起见,我会使用 urlencode 来保证安全。

http://us1.php.net/file_get_contents