2014-12-16 4 views
1

Я работаю над facebook sdk 4.0 для php. я получил список друзей в массиве, и я не могу получить доступ к изображению из массива. Формат массива выглядит следующим образом:Ошибка в получении данных из массива PHP

Array 
(
    [data] => Array 
     (
      [0] => stdClass Object 
       (
        [id] => AaJvu1z_MAA0INV57e4Bg5hOCaJDzObdptiArw 
        [name] => Mr. John 
        [picture] => stdClass Object 
         (
          [data] => stdClass Object 
           (
            [is_silhouette] => 
            [url] => https://fbprofile-a.akamaihd.net/picture.jpg 
           ) 

         ) 

       ) 
) 

Мой PHP код является:

foreach ($friend_list['data'] as $friends) { 
    $id = $friends->id; 
    $name = $friends->name; 
    $picture = $friends['data']->picture; 
    echo "ID: ".$id."<br>"; 
    echo "Name: ".$name."<br>"; 
    echo "Picture: ".$picture."<br>"; 
} 

"ID" и "Имя" работает отлично. но есть ошибка в «картине объекте»:

Error: Cannot use object of type stdClass as array

+0

должен быть $ друзей [ 'данные'] [0] -> Picture-> данных-> URL; – cartina

+4

'$ friends-> picture-> data-> url' – deceze

+0

Thank u Thank u Thank u очень .. проблема решена .... –

ответ

0

Использование

$picture = $friends->picture->data->url; 

Как вы используете извлечение объекта, а также ваш заказ был неправ.

-1

Попробуйте это:

<?php 
foreach ($friend_list['data'] as $friends) { 
    $id = $friends->id; 
    $name = $friends->name; 
    $picture = $friends->picture->data->url; 
    echo "ID: ".$id."<br>"; 
    echo "Name: ".$name."<br>"; 
    echo "Picture: ".$picture."<br>"; 
} 
Смежные вопросы