【发布时间】:2019-11-18 19:31:46
【问题描述】:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//Include Composer's autoloader
include 'vendor/autoload.php';
public function test_auth() {
try{
$hybridauth = new Hybridauth\Hybridauth($config);
//Attempt to authenticate users with a provider by name
$adapter = $hybridauth->authenticate('Twitter');
//Returns a boolean of whether the user is connected with Twitter
$isConnected = $adapter->isConnected();
//Retrieve the user's profile
$userProfile = $adapter->getUserProfile();
//Inspect profile's public attributes
var_dump($userProfile);
//Disconnect the adapter
$adapter->disconnect();
}
catch(\Exception $e){
echo 'Oops, we ran into an issue! ' . $e->getMessage();
}
}
遇到未捕获的异常
类型:错误
消息:找不到类“Hybridauth\Hybridauth\Hybridauth”
文件名:C:\xampp\htdocs\paymatrix_v2\application\controllers\Hauth.php
行号:35
回溯:
文件:C:\xampp\htdocs\paymatrix_v2\index.php 线路:294 函数:require_once
composer.json 文件
{
"description": "The CodeIgniter framework",
"name": "codeigniter/framework",
"type": "project",
"homepage": "https://codeigniter.com",
"license": "MIT",
"support": {
"forum": "http://forum.codeigniter.com/",
"wiki": "https://github.com/bcit-ci/CodeIgniter/wiki",
"irc": "irc://irc.freenode.net/codeigniter",
"source": "https://github.com/bcit-ci/CodeIgniter"
},
"require": {
"php": ">=5.2.4",
"mailgun/mailgun-php": "^2.1",
"php-http/curl-client": "^1.6",
"guzzlehttp/psr7": "^1.3",
"aws/aws-sdk-php": "3.*",
"pipl/piplapis-php" : "^5.0",
"hybridauth/hybridauth": "^2.9"
},
"require-dev": {
"mikey179/vfsStream": "1.1.*",
"aws/aws-sdk-php": "dev-master"
},
"autoload": {
"classmap": ["vendor/pipl/piplapis-php/src","vendor/pipl/"]
}
}
自动加载.php
// autoload.php @generated by Composer
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit9da23362304113093d59b5cbcc0e2b35::getLoader();
混合身份验证位置
vendor/hybridauth/hybridauth/
【问题讨论】:
-
请显示您的自动加载文件以及 Hybridauth 的位置。
-
hybridauth 位于 vendor 文件夹中,自动加载文件包含以下代码:
<?php // autoload.php @generated by Composer require_once __DIR__ . '/composer/autoload_real.php'; return ComposerAutoloaderInit9da23362304113093d59b5cbcc0e2b35::getLoader(); -
autoload.json,不是autoload.php,你应该给我hybridauth的完整路径。 -
自动加载文件名为 autoload.php 它在 vendor 文件夹中
-
尝试运行
composer dump-autoload。
标签: php composer-php hybridauth