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

StripeQA

目次一覧

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

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

 閲覧数:286 投稿日: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

 閲覧数:279 投稿日: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

 閲覧数:263 投稿日: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/3/02 7:12 更新
週間人気ページランキング / 2-24 → 3-1
順位 ページタイトル抜粋 アクセス数
1 Omise | 「支払」機能を有する決済系サービス(決済サービス) 12
2 pixivFANBOX | クリエイター支援プラットフォーム(課金販売できるプラットフォーム) 7
3 EPUB | ファイルフォーマット(電子書籍) 6
3 クレジットカード決済 | 課金 6
3 YouTube | 動画サービス(課金販売できるプラットフォーム) 6
3 Stripe Q1。Stripeにおける個人事業主の定義 | QA(Stripe) 6
3 EMVレベル1 / EMVレベル2 / EMVCo とは? 6
4 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 5
5 サブスクリプション | 課金 4
5 Google Pay | 「支払、出金」機能を有する決済系サービス表(決済サービス) 4
5 EMVCo | クレジットカード仕様(仕様) 4
6 Stripe エラー(Stripe) カテゴリー 3
6 プリペイドカード | カード 3
6 Stripe Q16。PaymentIntentの支払いで郵便番号入力を求められる。Radar rules の ZIP code を無効にしているのに | QA(Stripe) 3
7 Stripe Q73.CheckoutのSessionオブジェクトをcreateする際、'payment_intent_data'内の'metadata'として渡したデータを、webhookで受け取る件について | QA(Stripe) 2
7 Payment Request APIとは? / Payment Request API だけで支払い処理が完結するわけではない / Payment Request API の役割 2
7 Something went wrong / You might be having a network connection problem, or the payment provider cannot be reached at the moment. | Stripe エラー(Stripe) 2
7 「支払」と「送金」の違い | 違い 2
8 決済用語 1
8 Stripe Q13。決済成功時に、「請求に紐づけられたメールアドレス」に対して、メール送信したいのですが、 | QA(Stripe) 1
2024/3/2 1:01 更新