Stripe Q18。PHP使用する場合、オブジェクト形式で配列形式でもアクセスできる

StripeQA

目次一覧

 状態:-  閲覧数:710  投稿日:2019-03-11  更新日:2019-03-21  
質問履歴18-1 / A.18-1
質問履歴18-2 / A.18-2 / 質問履歴18-3
質問しなかったQ

質問履歴18-1 / A.18-1

 閲覧数:326 投稿日:2019-03-11 更新日:2019-03-12 

質問履歴18-1


Tell me why I can also access as an array as an object
・2019/3/7

Create a Stripe Product object.
\Stripe\Stripe::setApiKey("sk_test_××××××");

$product = \Stripe\Product::create([
   'name' => 'My SaaS Platform',
   'type' => 'service',
]);


Get the id of the Product object
echo $product->id;
· I can understand the above code
echo $product['id'];
· I can not understand the above code

・What is the reason why the returned value should be an object but can be accessed in an array?

A.18-1


implements ArrayAccess
・「ArrayAccessインターフェースをimplementsしているオブジェクト」だから、配列形式でもアクセスできる
・Product extends ApiResource which extends StripeObject which implements ArrayAccess.

質問履歴18-2 / A.18-2 / 質問履歴18-3

 閲覧数:317 投稿日:2019-03-12 更新日:2019-03-12 

質問履歴18-2


Is there a way to check whether the object (such as the return value from the API) is implements ArrayAccess?
・2019/3/11
・Is there a way to judge whether it is implements ArrayAccess by return value object without reading the document of API?

\Stripe\Stripe::setApiKey("sk_test_××××××");

$product = \Stripe\Product::create([
   'name' => 'My SaaS Platform',
   'type' => 'service',
]);


Access by object
echo $product->id;

Access by array
echo $product['id'];

A.18-2


2案
is_subclass_of
instanceof

\Stripe\Stripe::setApiKey("sk_test_××××");

$product = \Stripe\Product::create([
   'name' => 'My SaaS Platform 2019年3月6日',
   'type' => 'good',
]);

if (is_subclass_of($product, 'ArrayAccess')) {
 echo "yes, \$product is a implements ArrayAccess\n";
} else {
 echo "no, \$product is not implements ArrayAccess\n";
}

var_dump($product instanceof ArrayAccess);


質問履歴18-3


「あるオブジェクト」が、「指定インターフェース」を「implementsしているかどうか」の条件判定について


質問しなかったQ

 閲覧数:301 投稿日:2019-03-12 更新日:2019-03-12 

質問しなかったQ


「あるオブジェクト」が、「指定インターフェース」を「implementsしているかどうか」の条件判定について
・2019/3/12
「あるオブジェクト」が、「指定インターフェース」を「implementsしているかどうか」条件判定したい
・具体的には、ArrayAccess インターフェイスを「implementsしているかどうか」条件判定したい

Q
・どうやって条件判定するのですか?
・調べたら2つ見つかったのですが、違いは何ですか?
subclass_of
ReflectionClass::isSubclassOf



Stripe Q17。カード情報を「card object」「source object」へ保存する違いについて

Stripe Q19。「PaymentIntents」と「Sourceオブジェクト」と「Sources API」の関係について

コメント投稿(ログインが必要)



類似度ページランキング
順位 ページタイトル抜粋
1 Stripe Q18。PHP使用する場合、オブジェクト形式で配列形式でもアクセスできる 84
2 Stripe オブジェクト 46
3 Stripe プレフィックスがある「オブジェクトの値」など 42
4 Stripe Q12。IBAN要素を使用すると、日本でも顧客の銀行口座の詳細を取得できますか? 40
5 Stripe Q11。テストAPIで、実際のカード番号を入力したらどうなりますか? 38
6 Stripe Q14。Customerオブジェクトをcreateする際の"source"パラメータについて 38
7 Stripe Q28。Sourceオブジェクトのusageプロパティのデフォルト値について 36
8 Stripe Q21。新規顧客作成時に新規ソースオブジェクトを添付したいのですが、No such token: src_xxxxとなります 36
9 Stripe Q57。トークン化について 35
10 Stripe Q44。Standard アカウント連結後の返り値で、保存すべき値について 34
11 Stripe Q68.WebhookはPUT送信しているのですか? 34
12 Stripeの「ProductオブジェクトとPlanオブジェクトの関係」は、データベースにおける正規化のようなもの 34
13 Stripe Q60. Checkout\SessionオブジェクトとPaymentIntentオブジェクトの関係性は1対1ですか? 33
14 Stripe。Stripeアカウントを持っていない人でもクレジットカード決済が出来る 33
15 Stripe Q74.「お客様のビジネスの詳細」とは何ですか? 32
16 Stripe Q33。CustomerオブジェクトのcreateSourceメソッドのAPIドキュメントについて 32
17 Stripe Q49。 Connect 「Standardアカウント」で、自身の子アカウントでも商品販売する場合、被る不利益はありますか? 32
18 Stripe Q19。「PaymentIntents」と「Sourceオブジェクト」と「Sources API」の関係について 32
19 Stripe Q234。Connect カスタムアカウント手数料 32
20 Stripe Q56. 作成したCheckout\Sessionオブジェクトが破棄されるタイミングは? 32
2024/11/23 18:22 更新
週間人気ページランキング / 11-16 → 11-22
順位 ページタイトル抜粋 アクセス数
1 EMVレベル1 / EMVレベル2 / EMVCo とは? 9
2 Stripe Q15。PaymentIntent でエラー。カード番号に不備があります。 | QA(Stripe) 4
3 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 3
3 Stripe Connect > | documentation(Stripe) 3
4 Stripe Q37。PaymentIntentで支払いを行った後、成功画面を表示させるためにはどうすれば良いですか? | QA(Stripe) 2
4 \Stripe\PaymentIntentオブジェクト / Stripe\PaymentMethodオブジェクト / \Stripe\Checkout\Sessionオブジェクト 2
4 Stripe Q50。 Connect 「Standardアカウント」で、自身に連結された子アカウントを、ダッシュボードから削除するには? | QA(Stripe) 2
4 Stripe Payments > PREPARING FOR SCA > Payment Intents | documentation(Stripe) 2
5 Stripe webhook 配信の問題 / 実際に受け取った警告メールの受信例 1
5 「Gumroad」は、決済サービス「PayPal」を利用したオンラインコンテンツ販売サービス | デジタルコンテンツ販売可能なサービス(課金販売できるプラットフォーム) 1
5 Stripe Q43。payouts スケジュールについて | QA(Stripe) 1
5 Payment Intents API | その他エントリー(Stripe) 1
5 質問履歴29 / A抜粋 / 感想 1
5 Google Pay | 「支払、出金」機能を有する決済系サービス表(決済サービス) 1
5 普通送金 | 為替取引 1
5 Yahoo!ウォレット | 「チャージ、支払、送金、出金」機能を有する決済系サービス(決済サービス) 1
5 note | 課金販売できるプラットフォーム 1
5 LINE LIVE | ライブ配信サービス(課金販売できるプラットフォーム) 1
5 クレジットカード導入に関する当初の考え / クレジットカード導入に関する現在の考え / 自分の経験に照らし合わせて考えてみると 1
5 EPUB3 | ファイルフォーマット(電子書籍) 1
2024/11/23 1:02 更新