du77887 2014-07-23 03:41
浏览 47
已采纳

作曲家自动加载+ facebook sdk

i'm confused about composer. I read in other post "Every package should be responsible for autoloading itself" but i can't resolve the problem.

i have this composer.json file in root project folder:

{
    "require": {
        "facebook/php-sdk-v4": "4.0.*"
    }
}

I run composer install and it creates this structure:

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 file shows:

"autoload": {
    "psr-4": {
        "Facebook\\": "src/Facebook/"
    }
}

and autoload_classmap.php and autoload_namespaces.php return empty arrays.

When run index.php throws this error:

PHP Fatal error: Class 'Facebook\FacebookSession' not found on line 33

require 'vendor/autoload.php';

use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;

FacebookSession::setDefaultApplication('x','y');

I don't know if i have to put in this files (in this arrays that are returned) or composer must include them automatically. Can Composer autoload classes declared in file vendor/facebook/php-sdk-v4/composer.json?

Thank you in advance, i really appreciate help

  • 写回答

1条回答 默认 最新

  • doufan9290 2014-12-19 15:18
    关注

    Solved, i have updated composer and deps and works.

    Thank you!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 flask项目,怎么使用AJAX传数据库数据到echarts图表的data里,实现异步加载数据。
  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?