2016-09-16 47 views
-2

我有以下對象的變量:如何從對象(PHP)值

echo "<pre>"; 
print_r($request); 
echo "</pre>"; 
Facebook\FacebookResponse Object 
(
    [httpStatusCode:protected] => 200 
    [headers:protected] => Array 
     (
      [Access-Control-Allow-Origin] => * 
      [ETag] => "xxxxxxx" 
      [Pragma] => no-cache 
      [Cache-Control] => private, no-cache, no-store, must-revalidate 
      [facebook-api-version] => v2.7 
      [Expires] => Sat, 01 Jan 2000 00:00:00 GMT 
      [Content-Type] => application/json; charset=UTF-8 
      [x-fb-trace-id] => xxxxxxx 
      [x-fb-rev] => 2568729 
      [Vary] => Accept-Encoding 
      [X-FB-Debug] => xxxxxxx 
      [Date] => Fri, 16 Sep 2016 11:23:14 GMT 
      [Connection] => keep-alive 
      [Content-Length] => 1006 
     ) 

    [body:protected] => {"data":[{"access_token":"xxxxxxx","category":"Restaurant\/Cafe","category_list":[{"id":"171466272901863","name":"Late Night Restaurant"}],"name":"Karczma janka","id":"199296333814893","perms":["ADMINISTER","EDIT_PROFILE","CREATE_CONTENT","MODERATE_CONTENT","CREATE_ADS","BASIC_ADMIN"]},{"access_token":"xxxxxxx","category":"Restaurant\/Cafe","category_list":[{"id":"144722595590046","name":"Greek Restaurant"}],"name":"Jad\u0142odajnia","id":"1055846191130232","perms":["ADMINISTER","EDIT_PROFILE","CREATE_CONTENT","MODERATE_CONTENT","CREATE_ADS","BASIC_ADMIN"]}],"paging":{"cursors":{"before":"xxxxxxx","after":"xxxxxxx"}}} 
    [decodedBody:protected] => Array 
     (
      [data] => Array 
       (
        [0] => Array 
         (
          [access_token] => xxxxxxx 
          [category] => Restaurant/Cafe 
          [category_list] => Array 
           (
            [0] => Array 
             (
              [id] => 171466272901863 
              [name] => Late Night Restaurant 
             ) 

           ) 

          [name] => Karczma janka 
          [id] => 199296333814893 
          [perms] => Array 
           (
            [0] => ADMINISTER 
            [1] => EDIT_PROFILE 
            [2] => CREATE_CONTENT 
            [3] => MODERATE_CONTENT 
            [4] => CREATE_ADS 
            [5] => BASIC_ADMIN 
           ) 

         ) 

        [1] => Array 
         (
          [access_token] => xxxxxxx 
          [category] => Restaurant/Cafe 
          [category_list] => Array 
           (
            [0] => Array 
             (
              [id] => 144722595590046 
              [name] => Greek Restaurant 
             ) 

           ) 

          [name] => Jadłodajnia 
          [id] => 1055846191130232 
          [perms] => Array 
           (
            [0] => ADMINISTER 
            [1] => EDIT_PROFILE 
            [2] => CREATE_CONTENT 
            [3] => MODERATE_CONTENT 
            [4] => CREATE_ADS 
            [5] => BASIC_ADMIN 
           ) 

         ) 

       ) 

      [paging] => Array 
       (
        [cursors] => Array 
         (
          [before] => MTk5Mjk2MzMzODE0ODkz 
          [after] => MTA1NTg0NjE5MTEzMDIzMgZDZD 
         ) 

       ) 

     ) 

    [request:protected] => Facebook\FacebookRequest Object 
     (
      [app:protected] => Facebook\FacebookApp Object 
       (
        [id:protected] => 1304598089572869 
        [secret:protected] => a32f677958e282068a8c74ffe7ff2bbc 
       ) 

      [accessToken:protected] => xxxxxxx 
      [method:protected] => GET 
      [endpoint:protected] => /me/accounts 
      [headers:protected] => Array 
       (
        [Content-Type] => application/x-www-form-urlencoded 
       ) 

      [params:protected] => Array 
       (
       ) 

      [files:protected] => Array 
       (
       ) 

      [eTag:protected] => 
      [graphVersion:protected] => v2.5 
     ) 

    [thrownException:protected] => 
) 

我需要獲得並保存到數組或字符串只有這個:

[body:protected] => {"data":[{"access_token":"xxxxxxx","category":"Restaurant\/Cafe","category_list":[{"id":"171466272901863","name":"Late Night Restaurant"}],"name":"Karczma janka","id":"199296333814893","perms":["ADMINISTER","EDIT_PROFILE","CREATE_CONTENT","MODERATE_CONTENT","CREATE_ADS","BASIC_ADMIN"]},{"access_token":"xxxxxxx","category":"Restaurant\/Cafe","category_list":[{"id":"144722595590046","name":"Greek Restaurant"}],"name":"Jad\u0142odajnia","id":"1055846191130232","perms":["ADMINISTER","EDIT_PROFILE","CREATE_CONTENT","MODERATE_CONTENT","CREATE_ADS","BASIC_ADMIN"]}],"paging":{"cursors":{"before":"xxxxxxx","after":"xxxxxxx"}}} 

我會盡力做到這一點的兩天,但我不出來:(我是初學者。

請問你給我寫代碼來提取更高的價值?

非常感謝你:) 現在我有這樣的:

$wartosc = '{"data":[{"access_token":"EAASihmm0IgUBAGLdqRwBxOq6LoywTG0N4ZChxRoSHiv3I3a7glTFuKurABcOGik9FKTQtqU4rDa0dkwZAG7ZAnCpXIkrTmmfHDLG03VlvEohJWTyQmfbQgbCtZCDUTa28yjkGs3FCvCiNZCekoZCeG35GCPWVp8jPmpBFUdvYzpAZDZD","category":"Restaurant\/Cafe","category_list":[{"id":"171466272901863","name":"Late Night Restaurant"}],"name":"Karczma janka","id":"199296333814893","perms":["ADMINISTER","EDIT_PROFILE","CREATE_CONTENT","MODERATE_CONTENT","CREATE_ADS","BASIC_ADMIN"]},{"access_token":"EAASihmm0IgUBAEmRuj3JsgcspHqXxgOtSEXr0RSksoish6WRKZBNZBANidwMhrZCmEQYl1gRC6IcL28pZBgeAKNCJSREijZBwGxuwf8lPGkXV2kRHgspgQaifdkPeaQRCjpsrO5M3d1yCzh5ZAkcN7M9Q1xBO9vrCJBMxQ8J1ycEWhND9oNDzb","category":"Restaurant\/Cafe","category_list":[{"id":"144722595590046","name":"Greek Restaurant"}],"name":"Jad\u0142odajnia","id":"1055846191130232","perms":["ADMINISTER","EDIT_PROFILE","CREATE_CONTENT","MODERATE_CONTENT","CREATE_ADS","BASIC_ADMIN"]}],"paging":{"cursors":{"before":"MTk5Mjk2MzMzODE0ODkz","after":"MTA1NTg0NjE5MTEzMDIzMgZDZD"}}}'; 

$wartosc = json_decode($wartosc, true); 

echo "<pre>"; 
print_r($wartosc); 
echo "</pre>"; 


Array 
(
    [data] => Array 
     (
      [0] => Array 
       (
        [access_token] => EAASihmm0IgUBAGLdqRwBxOq6LoywTG0N4ZChxRoSHiv3I3a7glTFuKurABcOGik9FKTQtqU4rDa0dkwZAG7ZAnCpXIkrTmmfHDLG03VlvEohJWTyQmfbQgbCtZCDUTa28yjkGs3FCvCiNZCekoZCeG35GCPWVp8jPmpBFUdvYzpAZDZD 
        [category] => Restaurant/Cafe 
        [category_list] => Array 
         (
          [0] => Array 
           (
            [id] => 171466272901863 
            [name] => Late Night Restaurant 
           ) 

         ) 

        [name] => Karczma janka 
        [id] => 199296333814893 
        [perms] => Array 
         (
          [0] => ADMINISTER 
          [1] => EDIT_PROFILE 
          [2] => CREATE_CONTENT 
          [3] => MODERATE_CONTENT 
          [4] => CREATE_ADS 
          [5] => BASIC_ADMIN 
         ) 

       ) 

      [1] => Array 
       (
        [access_token] => EAASihmm0IgUBAEmRuj3JsgcspHqXxgOtSEXr0RSksoish6WRKZBNZBANidwMhrZCmEQYl1gRC6IcL28pZBgeAKNCJSREijZBwGxuwf8lPGkXV2kRHgspgQaifdkPeaQRCjpsrO5M3d1yCzh5ZAkcN7M9Q1xBO9vrCJBMxQ8J1ycEWhND9oNDzb 
        [category] => Restaurant/Cafe 
        [category_list] => Array 
         (
          [0] => Array 
           (
            [id] => 144722595590046 
            [name] => Greek Restaurant 
           ) 

         ) 

        [name] => Jadłodajnia 
        [id] => 1055846191130232 
        [perms] => Array 
         (
          [0] => ADMINISTER 
          [1] => EDIT_PROFILE 
          [2] => CREATE_CONTENT 
          [3] => MODERATE_CONTENT 
          [4] => CREATE_ADS 
          [5] => BASIC_ADMIN 
         ) 

       ) 

     ) 

    [paging] => Array 
     (
      [cursors] => Array 
       (
        [before] => MTk5Mjk2MzMzODE0ODkz 
        [after] => MTA1NTg0NjE5MTEzMDIzMgZDZD 
       ) 

     ) 

) 

我需要的foreach這個陣列(?):

- access_token (eg. EAASihmm0IgUBAOVlH3gCnNvZBADYjAsgUKjGTzRHDdGyEpeTTEPCnZBP6ROFZAHp3MZCScXnmQVsfmCgpiLSKqUV1KLuIFZBBFtLTyJnEAyo36DeinzAeWOl65TDRuBP5sMdLhZCRBuXcVYTVNYHrqdZCX3lx5oKN8h4N2ZC0yHKOwZDZD), 
- category (eg. Restaurant/Cafe) 
- id1 (eg. 171466272901863) 
- name (eg. Karczma janka), 
- id2 (eg. 199296333814893) 

在我的例子,我有2個餐廳:Karczma賓館janka和Jadłodajnia。 最後可能有任何數字(最多100個)。

我怎樣才能得到這些值?

+0

$ request - > {body:protected}或$ request-> body:protected –

+1

@Anant:'protected'部分不是屬性名稱的一部分,但它是可見性範圍。您無法直接訪問該屬性。 – Blaatpraat

回答

1

我可以看到你正在輸出一個FacebookResponse對象。
所以我猜你正在寫一些使用Facebook SDK的東西。

讓我得到的SDK文檔: https://developers.facebook.com/docs/php/FacebookResponse/5.0.0

在這些文檔可以看我的方法getBody(),將返回響應的身體。

+0

謝謝。你想想:$ request = $ fb-> get('/ me/accounts',$ accessToken-> getValue()); $ graphObject = $ request-> getBody(); ?? –

+0

'$ request-> getBody();'會返回你想要的,所以如果這個json字符串是你想要的$ graphObject,那麼是的,就是這樣。 – Blaatpraat