我对作曲家感到困惑。我在其他帖子中读到"每个包都应该负责自动加载#34;但我无法解决问题。
我在根项目文件夹中有这个composer.json文件:
{
"require": {
"facebook/php-sdk-v4": "4.0.*"
}
}
我运行composer install并创建了这个结构:
vendor/
|-- autoload.php
|-- composer
| |-- autoload_classmap.php
| |-- autoload_namespaces.php
| |-- autoload_real.php
| |-- ClassLoader.php
| `-- installed.json
`-- facebook
`-- php-sdk-v4
|-- autoload.php
|-- composer.json
|-- CONTRIBUTING.md
|-- LICENSE
|-- phpunit.xml.dist
|-- README.md
|-- src
| `-- Facebook
| |-- Entities
| | |-- AccessToken.php
| | `-- SignedRequest.php
| |-- FacebookAuthorizationException.php
| |-- FacebookCanvasLoginHelper.php
| |-- FacebookClientException.php
| |-- FacebookJavaScriptLoginHelper.php
| |-- FacebookOtherException.php
| |-- FacebookPageTabHelper.php
| |-- FacebookPermissionException.php
| |-- FacebookRedirectLoginHelper.php
| |-- FacebookRequestException.php
| |-- FacebookRequest.php
| |-- FacebookResponse.php
| |-- FacebookSDKException.php
| |-- FacebookServerException.php
| |-- FacebookSession.php
| |-- FacebookSignedRequestFromInputHelper.php
| |-- FacebookThrottleException.php
[...]
vendor / facebook / php-sdk-v4 / composer.json文件显示:
"autoload": {
"psr-4": {
"Facebook\\": "src/Facebook/"
}
}
和autoload_classmap.php和autoload_namespaces.php返回空数组。
运行时index.php会抛出此错误:
PHP致命错误:Class' Facebook \ FacebookSession'没有在第33行找到
require 'vendor/autoload.php';
use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;
FacebookSession::setDefaultApplication('x','y');
我不知道是否必须输入此文件(在此数组中返回)或作曲家必须自动包含它们。 可以在文件vendor / facebook / php-sdk-v4 / composer.json中声明的Composer自动加载类吗?
提前感谢您,我非常感谢帮助
答案 0 :(得分:0)
解决, 我已经更新了作曲家和作品。
谢谢!