如何将所有必需的类从Stripe PHP SDK(2.1.0)导入CakePHP(2.6.1)?
我为Stripe添加了一个子模块,并将其克隆到app / Vendor / Stripe
我的代码如下所示:
<?php
App::uses('Stripe', 'Vendor/Stripe/lib');
// Secret API Key for Stripe
\Stripe\Stripe::setApiKey('sk_test_xxxxxxxxxxxxxxxxxxx');
class BillingController extends AppController {
// My methods
}
?>
我得到了:
Fatal Error
Error: Class 'Stripe\Stripe' not found
File: /Projects/Web/admin.example.io/app/Controller/BillingController.php
Line: 6
答案 0 :(得分:1)
您应该在使用供应商时使用import()
,而不是uses()
像
App::import('Vendor', 'Stripe', array('file' => 'Stripe' . DS .'lib' . DS . 'Stripe.php'));
此处DS对于/
是常量。
您应该遵循cakephp命名约定,例如在使用Vendor包时使用import()Must
。使用其他类(如控制器)时,您可以使用uses(),但在您的情况下不能使用。
已更新:
现在步骤,您需要关注,因为它更具体针对您的问题:
1.安装使用作曲家。
2.现在使用
导入已安装的软件包/供应商 App::import('Vendor', 'autoload', array('file' => 'Stripe' . DS .'vendor' . DS . 'autoload.php'));
答案 1 :(得分:0)
您应该包含init.php文件。
压缩文件的目录结构如下:
stripe-php
- libs/
- data/
- test/
- init.php
不要将PHP文件包含在libs文件夹中,只需包含init.php。