首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP-更新composer后内部通信无法工作

PHP-更新composer后内部通信无法工作
EN

Stack Overflow用户
提问于 2016-08-08 23:03:07
回答 1查看 258关注 0票数 0

我最近使用composer进行了更新。更新后,我在php文件中得到错误,在那里我发送数据到对讲机。这是错误:

代码语言:javascript
复制
Fatal error: Class 'Intercom\IntercomBasicAuthClient' not found in <filename>

我在Symfony Exception (Class not found) only on development and production servers中发现了类似的问题。但是不能确切地理解如何解决这个问题。我尝试使用大写和小写的对讲机,但问题没有解决。

在我的installed.json中,我发现了这个:

代码语言:javascript
复制
"autoload": {
            "psr-4": {
                "Intercom\\": [
                    "src"
                ]
            }
        }

这是内部通信文件的目录位置:

代码语言:javascript
复制
/public_html/vendor/intercom/intercom-php/src

当我深入研究更多的composers文件(试图理解类是如何包含的等等)时,我偶然发现了autoload_namespaces.json中的以下代码

代码语言:javascript
复制
<?php

// autoload_namespaces.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'libphonenumber' => array($vendorDir . '/giggsey/libphonenumber-for-php/src'),
    'PhpAmqpLib' => array($vendorDir . '/php-amqplib/php-amqplib'),
);

libphonenumber和phpamqplib是我使用composer安装的两个库,这里缺少内部通信。

所以我完全迷惑了,真正的问题是什么。autoload_namespace中是否缺少内部通信库,或者是大小写问题还是其他问题。

编辑:

这是我在autoload_psr4.php中发现的

代码语言:javascript
复制
<?php

// autoload_psr4.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src'),
    'JmesPath\\' => array($vendorDir . '/mtdowling/jmespath.php/src'),
    'Intercom\\' => array($vendorDir . '/intercom/intercom-php/src'),
    'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
    'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
    'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
    'Aws\\' => array($vendorDir . '/aws/aws-sdk-php/src'),
);

这就是我在php文件中包含对讲机的方式:

代码语言:javascript
复制
use Intercom\IntercomBasicAuthClient;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-22 15:25:18

我自己想出来的。问题出在PHP版本上。我使用的是php-5.5,对讲库严格要求PHP版本>= 5.6。

使用对讲机API创建了我自己的库,使其适用于php-5.5。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38832607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档