我正在尝试使用unirest,一个新的php lib来进行休息调用。
我想将它放在项目上方的系统范围内。然后我把它包括在内:
require_once ('../unirest-php-master/lib/Unirest/Unirest.php');
加载很好。然后我按照自述文件使用它:
$response = Unirest::post(CSWA_URL ....
我得到致命错误:第23行的hello_world / sign_start.php中找不到“Unirest”类
然后我尝试使用命名空间(请参阅库的code。在声明Namespace Unirest
类之前,他们使用Unirest
语句。)
$response = Unirest\Unirest::post(CSWA_URL ....
我走得更远。现在:致命错误:在第26行的unirest-php-master / lib / Unirest / Unirest.php中找不到类'Unirest \ HttpMethod' - 这是库中的错误代码!
问:我做错了吗? Unirest的作者犯了错误吗?我必须将库放在./lib中吗?什么是最好的解决办法?答案 0 :(得分:6)
看起来Unirest.php中的Unirest代码依赖于自动加载来自unirest lib目录中的其他两个文件的代码(HttpMethod.php和HttpResponse.php)。
作者建议使用composer安装软件包,如果您要这样做,编译器会将Unirest名称空间添加到它生成的autoloader.php脚本中。从那里你需要在脚本顶部需要autoload.php文件,它将处理未定义的加载类。
或者,如果您不想使用composer,我只需要在脚本顶部的unirest lib目录中另外两个文件。