致命错误:Class' Stripe \ Stripe_Charge'找不到

时间:2015-06-10 19:32:24

标签: php stripe-payments

这是我正在使用的代码。

temp = ((unsigned char)(b << 4)) >> 4;

为什么我收到错误

  

&#34;致命错误:Class&#39; Stripe \ Stripe_Charge&#39;未在&#34;

中找到

2 个答案:

答案 0 :(得分:2)

我也把头发拉出来,但终于找到了解决办法。

从我发现的旧版本的PHP(&lt; 5.3)不使用命名空间。绕过这个PSR-0 *转换的下划线到目录名称。这为Composer创建了一个混乱的界面。现在已经添加了PHP 5.3及更高版本的命名空间。 Composer现在使用PSR-4,它支持名称空间,但不会将下划线转换为目录。因此,如果您使用的是较新的首选PSR-4,则需要使用新方法。因此,你的行:

$charge = \Stripe\Stripe_Charge::create(...);

需要成为:

$charge = \Stripe\Charge::create(...);

您可以通过打开/vendor/stripe/stripe-php/composer.json文件仔细检查Stripe模块正在使用的PSR版本。我的节目:

"autoload": {
  "psr-4": { "Stripe\\" : "lib/" }
},

明确指出我使用的是PSR-4。

以下是关于此主题的一些好读物:https://mattstauffer.co/blog/a-brief-introduction-to-php-namespacing

* PSR代表PHP标准建议

答案 1 :(得分:0)

我发现在我的stripe-php / lib目录中均没有使用UsageRecord.php和UsageRecordSummary.php,并且同样未在我的stripe-php / init.php中启动它。我去了https://github.com/stripe/stripe-php/blob/master/lib/

并抓住了他们

使用Composer进行安装。亚当·帕特森/ oauth2-stripe。不知道那里是否不存在。