2016-10-10 18 views
-2

にオブジェクト配列から値を取得しようとしましたが、これはエラーです。保護されたプロパティPHP

echo "<pre>";print_r($response->_value());//Call to undefined method OmiseCharge::_value() 
echo "<pre>";print_r($response->_value); //Cannot access protected property PHP 

実際の配列

OmiseCharge Object 
(
    [OMISE_CONNECTTIMEOUT:OmiseApiResource:private] => 30 
    [OMISE_TIMEOUT:OmiseApiResource:private] => 60 
    [_values:protected] => Array 
     (
      [object] => list 
      [from] => 2012-08-01T00:00:00+00:00 
      [to] => 2016-10-20T00:00:00+00:00 
      [offset] => 0 
      [limit] => 20 
      [total] => 201 
      [order] => chronological 
      [location] => /charges 
      [data] => Array 
       (
        [0] => Array 
         (
          [object] => charge 
          [id] => chrg_test_############## 
          [livemode] => 
+0

-1票を正当化してください。 –

+0

一般に保護されたクラスのメンバー[このクラスの子どものクラス内でしかアクセスできません](http://php.net/manual/en/language.oop5.visibility.php)。あなたの配列の '_values'も関数ではなく、変数名です。最後に '$ response'は配列ではなく、オブジェクト、特にOmiseChargeクラスのオブジェクトインスタンス –

+3

おそらくそれらの値を取得するメソッドがあります。 '$ response-> getValues();'などのようなものです。 – Rasclatt

答えて

0
echo "<pre>";print_r($response->offsetGet('data')); 

は感謝を働きました。

0

保護されたメンバーにアクセスするには、publicの型であるgetterメソッドを実装する必要があります。

+0

の回答はすでに私のために働いています。 –

関連する問題