2015-06-03 3 views
0

Я пытаюсь использовать Stripe php api в расширении Bolt, но у него проблемы с поиском класса. Я добавил библиотеку нашивки в composer.json:Ошибка: Class 'Stripe' не найден

"require": { 
    "stripe/stripe-php": "1.*" 
} 

И побежал composer install. myextension/vendor/composer/autoload_classmap.php теперь показывает классы загружены:

$vendorDir = dirname(dirname(__FILE__)); 

return array(
    'Stripe' => $vendorDir . '/stripe/stripe-php/lib/Stripe/Stripe.php', 
    'Stripe_Account' => $vendorDir . '/stripe/stripe-php/lib/Stripe/Account.php', 
    'Stripe_ApiConnectionError' => $vendorDir . '/stripe/stripe-php/lib/Stripe/ApiConnectionError.php', 
    'Stripe_ApiError' => $vendorDir . '/stripe/stripe-php/lib/Stripe/ApiError.php', 
    ... 

И теперь я пытаюсь использовать его в расширении, как это:

use Stripe, Stripe_Customer, Stripe_Charge, Stripe_Plan, Stripe_Coupon, Stripe_Error; 

public function initialize() 
{ 
    $stripe = new Stripe(); 
    $stripe->setApiKey($this->config['stripe_key']); 

Но я получаю ошибку:

Error: Class 'Stripe' not found
File: extensions/local/andyjessop/myextension/Extension.php

I до сих пор не обошли автозагрузку, поэтому я думаю, что делаю что-то не так, но я не понимаю, что это такое. Может ли кто-нибудь помочь?

+0

Включенный в ваш скрипт autoload.php? – Med

+0

Включает ли Bolt файл autoload.php для вас? Возможно, вам придется включить его самостоятельно, если это не так. –

+0

Опубликуйте github вашего проекта, чтобы мы могли видеть, как все подключается. – JosephMCasey

ответ

2

Вы должны включить файл автозагрузки композитора.

require_once('vendor/autoload.php'); 
+0

Но только один раз при загрузке, а не в каждом файле! – Sven

Смежные вопросы