2015-09-26 56 views
2

如何獲得'name'的值?來自條紋對象的提取值

我一直在嘗試各種方法,包括數組($充電)和__toArray。

第一部作品,第二個沒有:

$charge_id = $charge->id; 
echo $charge_id; 
$name=$charge->_values->name; 
echo $name; 

下面是條返回的對象的部分(最多我想提取的名稱):根據本

Stripe\Charge::__set_state(array(
    '_opts' => 
    Stripe\Util\RequestOptions::__set_state(array(
    'headers' => 
    array (
    ), 
    'apiKey' => 'sk_test_...', 
)), 
    '_values' => 
    array (
    'id' => 'ch_73JaKii01nmbpZ', 
    'object' => 'charge', 
    'created' => 1443251926, 
    'livemode' => false, 
    'paid' => true, 
    'status' => 'succeeded', 
    'amount' => 1000, 
    'currency' => 'usd', 
    'refunded' => false, 
    'source' => 
    Stripe\Card::__set_state(array(
     '_opts' => 
     Stripe\Util\RequestOptions::__set_state(array(
     'headers' => 
     array (
     ), 
     'apiKey' => 'sk_test_...', 
    )), 
     '_values' => 
     array (
     'id' => 'card_73JZrJCDzl877J', 
     'object' => 'card', 
     'last4' => '1111', 
     'brand' => 'Visa', 
     'funding' => 'unknown', 
     'exp_month' => 12, 
     'exp_year' => 2021, 
     'fingerprint' => 'hhzQQZIXaAVDNMPP', 
     'country' => 'US', 
     'name' => 'Steve Veltkamp', 

回答

2

(注:你應該修改你的問題刪除您的密鑰,並用例如更換'sk_test_...'。即使它只是一個測試密鑰,祕密密鑰也不意味着被共享。)

您嘗試訪問的屬性是持卡人的姓名。一個charge objectsource屬性實際上是一個card object

php > echo get_class($charge); 
Stripe\Charge 

php > echo get_class($charge->source); 
Stripe\Card 

因此,要獲得持卡人的姓名,所有你需要做的是:

$name = $card->source->name; 

注意name是卡的一個可選屬性,所以您可能會得到NULL,空字符串,電子郵件地址等。