我有一段代码,它几乎和它一样准时,但出于某种原因,它只是拒绝运行:
<?php
require_once "unirest/src/Unirest.php";
$photo_url = "http://api.animetrics.com/img/test/sc.jpg";
// These code snippets use an open-source library.
$response = Unirest::post("<--URL-->",
array(
"X-Mashape-Key" => "<--API Key-->",
"Content-Type" => "application/x-www-form-urlencoded",
"Accept" => "application/json"
),
array(
"selector" => "FACE, EYES, FULL",
"url" => "http://api.animetrics.com/img/test/sc.jpg"
)
);
echo $response;
?>
此代码块直接来自mashape网站,我只是下载了Unirest文件。我也确定我的道路是正确的。
我调查了一下,并尝试在Unirest文件中添加一个静态类函数来打印出来的东西,不出所料,它没有用。
这是我添加的代码块:
<?php
namespace Unirest;
echo "in file";
$file = new File();
$file->printa("abc");
class File
{
public static function printa($a) {
echo $a;
}
....
在同一个文件中,$file->printa("abc");
效果很好,但是当从其他文件调用时,File::printa("abc");
或Unirest::printa("abc");
或File\Unirest::printa("abc");
只是拒绝运行。
我不确定,但我是否误解了名称空间?我原以为Unirest::printa("abc");
是访问静态类函数的正确方法吗?
我很感激有关这方面的任何建议,谢谢。
答案 0 :(得分:1)
自Unirest 2.0发布以来,方法&amp;班级签名已经改变。不幸的是,Mashape样本片段尚未更新。
您应致电Unirest::post
,而不是致电Unirest\Request::post
,请参阅最简单的documentation了解更多详情。
我们很快会更新Mashape样本以反映这一变化。
我是unirest-php的作者,我在Mashape工作。