2016-05-19 9 views
1

ストライプ支払いフォームを実装したいが、致命的なエラークラス' Stripe \ Charge 'が表示される。クラスはそこにあります(私のフォルダツリーを参照してください)、私は試しました:ストライプクラス 'Stripe Charge

$charge = \Stripe\Charge::create(array(

$charge = \Charge::create(array(

しかし、両方とも動作しません。 私のPHPコード:

require_once('Stripe/lib/Stripe.php'); 
\Stripe\Stripe::setApiKey("my_key"); //Replace with your Secret Key 

$charge = \Stripe\Charge::create(array(
    "amount" => 1500, 
    "currency" => "usd", 
    "card" => $_POST['stripeToken'], 
    "description" => "Charge for Facebook Login code." 
)); 

enter image description here

答えて

2

あなたはストライプPHPライブラリの古い(1.1)バージョンを使用しています。そのバージョンでは、すべてのクラスはStripe_Classと命名されました。

バージョン2.0.0では、構文が名前空間を使用するように変更され、すべてのクラスの名前が\Stripe\Classに変更されました。

可能であれば、最新バージョン(3.13.0)にアップグレードすることをお勧めします。あなたはここにそれを見つけることができます:https://github.com/stripe/stripe-php/releases。 StripeのドキュメントとAPIリファレンスのすべての例では、新しい構文が使用されています。

+0

あなたが助けてくれてありがとうを使用することができます。) –

1

あなたは

use \Stripe\Stripe; 
\Stripe\Stripe::setApiKey("my_key"); 
public function chargeCard($token) 
{ 
    try 
    { 
     $charge=\Stripe\Charge::create(array(
      "amount" => 200,//Amount in cent.(100 cent equal to $1.00).it is smallest currency unit 
      "currency" => "usd",//united state dollar .but we can use different countries currency code 
      "source" => $token, // obtained createtoken function 
      "description" => "Charge for testing"//desc of payment purpose,Automatic receipt emails will include the description of the charge(s) 
     ) 
     ); 
     } 
     catch(\Stripe\Card $e){ 
     echo $e->getMessage(); 
     } 
    }