У меня есть блок кода, который почти такой же скромный, как он есть, но по какой-то причине он просто отказывается работать:
<?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");
правильный способ доступа к функции статического класса?
Буду признателен за любые советы по этому поводу, спасибо.
С момента выпуска Unirest 2.0, метод & подпись класса изменилась. к сожалению, образцы фрагментов Mashape еще не обновлены.
Вместо звонка Unirest::post
ты должен звонить Unirest\Request::post
пожалуйста, обратитесь к Unirest документация Больше подробностей.
Мы скоро будем обновлять образцы Mashape, чтобы отразить это изменение.
Я автор unirest-php и работаю в Mashape.
Других решений пока нет …