我现在正在创建一个API包装器,我决定创建一个index.php来加载客户端,仅用于测试/调试目的。
这是我的index.php
require_once("src/API/Client.php");
$client = new \API\Client();
这是我的API \ Client
namespace API;
class Client
{
public function __construct()
{
$this->_requester = new Client\Request();
return $this;
}
}
我得到的错误是在Client.php中找不到API \ Client \ Request
确实存在,可以在下面查看:
namespace API\Client
class Request
{
protected $_requestUrl;
public function __construct()
{
return $this;
}
}
这是我第一次尝试制作具有完全命名空间的应用程序的应用程序,因此我非常感谢您帮助实现这一功能。
答案 0 :(得分:1)
您错过了require_once
语句,以包含包含Request
类定义的脚本。
require_once("src/API/Client.php");
require_once("src/API/Client/Request.php"); // <-- or whatever the filename is
我建议使用自动加载器,这意味着您不需要任何包含语句。例如PSR-0 autoloader。
此外,在构造函数中使用return
语句没有任何意义。构造函数无法返回值。