2013-12-24 6 views
-1

У меня есть следующая данные JSonОшибка при доступе к ключу JSON

Merchant_stripe_response Object 
(
    [_response:protected] => stdClass Object 
     (
      [object] => customer 
      [created] => 1387883058 
      [id] => cus_3BFTkHufSbD1I9 
      [livemode] => 
      [description] => Order #22 
      [email] => 
      [delinquent] => 
      [metadata] => stdClass Object 
       (
       ) 

      [subscription] => 
      [discount] => 

я пытаюсь получить значение в описании клавиши. Я пробовал делать это

echo $_response->description 

, но у меня есть ошибка.

Fatal error: Cannot access protected property Merchant_stripe_response::$_response in C:\wamp\ 

Я также попытался json_decode использовать echo $response['description'] но он вернулся пустой JSON.

Я сделал что-то не так? Как я могу получить доступ к ключу с этой структурой?

[_response:protected] 
+0

«но у меня есть ошибка», какая ошибка? – casraf

+0

Неустранимая ошибка: не удается получить доступ к защищенному свойству Merchant_stripe_response :: $ _ response в C: \ wamp \ –

ответ

1

Существует, скорее всего, причина, по которой он защищен - потому что вы не должны получать к нему доступ напрямую. Возможно, есть функция, называемая getDescription() или аналогичным геттером?

С другой стороны, опять же - я не поощряю это, как есть, вероятно, причина, почему вы не можете, вы можете расширить класс:

class Merchant_stripe_response_custom extends Merchant_stripe_response { 
    public function getDescription() { 
     return $this->_response->description; 
    } 
} 

Кажется, что не существует геттер (исходный код here), поэтому вам нужно будет сделать это выше или просто изменить protected на public в своем исходном коде (или добавить туда геттер).

+0

Это что-то связано с шлюзом оплаты Stripe ... Защищает ли общественность все серьезные проблемы безопасности? –

Смежные вопросы