PHP Include - 打开流时出错

问题描述 投票:1回答:2

我正在使用我使用Composer下载的应用程序。

该包有许多可以调用和使用的类。但是,当我运行以下代码时,我收到以下错误。

<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');

include 'vendor/autoload.php';

$clarifai = new \DarrynTen\Clarifai\Clarifai('CLARIFAI_API_KEY');

$input = new Input();
    $input->setImage('https://samples.clarifai.com/metro-north.jpg')->isUrl();
    $inputResult = $clarifai->getInputRepository()->add($input);

echo json_encode($inputResult);
?>

错误:

警告:include(/ var / www / html / vendor / darrynten / clarifai-php / src / Entity):无法打开流:不是第7行/var/www/html/ctest.php中的目录

警告:include():无法打开/ var / www /中的'/ var / www / html / vendor / darrynten / clarifai-php / src / Entity'(include_path ='。:/ usr / share / php')第7行的html / ctest.php

致命错误:未捕获错误:/var/www/html/ctest.php:11中找不到类'输入'堆栈跟踪:第11行/var/www/html/ctest.php中引发的#0 {main}

类输入位于/var/www/html/vendor/darrynten/clarifai-php/src/Entity,我在第一次包含之后使用PHP中的include关键字,包括无效。

include 'vendor/autoload.php';
include '/var/www/html/vendor/darrynten/clarifai-php/src/Entity';

后来,我使用了以下代码

$concept = new \DarrynTen\Clarifai\Entity\Concept();
$concept->setId('boscoe')->setValue(true);

$input = new \DarrynTen\Clarifai\Entity\Input();
$input->setImage('https://samples.clarifai.com/puppy.jpeg')->isUrl()
    ->setConcepts([$concept]);

$inputResult = $clarifai->getInputRepository()->add($input);

在最后一行,我收到此错误。 (Guzzle相关)

致命错误:未捕获GuzzleHttp \ Exception \ ClientException:客户端错误:POST https://api.clarifai.com/v2/inputs导致400 Bad Request响应:{“status”:{“code”:10020,“description”:“Failure”},“inputs”:[{“id” :“e25be6bf0a4a4090a774694c016202cb”,“data”:{“image”:{“ur(截断...)/var/www/html/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:111堆栈跟踪:# 0 /var/www/html/vendor/guzzlehttp/guzzle/src/Middleware.php(65):GuzzleHttp \ Exception \ RequestException :: create(Object(GuzzleHttp \ Psr7 \ Request),Object(GuzzleHttp \ Psr7 \ Response)) #1

这也与名称空间有关吗?

php clarifai
2个回答
1
投票

我发现了一个新的PHP库,似乎与使用新的api_key版本创建的Clarifai中的新应用程序兼容:phpfanatic/clarifai

您可以轻松尝试通过composer安装它:

composer require phpfanatic/clarifai

作为依赖关系,您需要:

  • PHP - 5.6,7.0 - 可以使用早期版本,此时未经测试。
  • cURL - *
  • Clarifai API Key - clarifai
  • PHPUnit - 运行测试(可选)。

Here您可以通过快速教程或分步说明找到完整的文档。


0
投票

来自Clarifai的Eddie来了。对不起,你遇到了一个问题。

我看到你正在使用API​​密钥。该社区图书馆目前仅支持我们的old auth mechanism。 Clarifai中的所有新“应用程序”仅使用api_key而不是client_idclient_secret创建。

目前有一个PR open来添加对API密钥的支持。

我们希望在今年年底之前获得一流的PHP支持。

© www.soinside.com 2019 - 2024. All rights reserved.