2013-03-01 3 views
-1

Я получаю этот массив объектов класса std, как я могу вызвать его в одном массиве, поскольку вы можете видеть, что только некоторые значения изменены.std class object array

Array 
(
    [0] => stdClass Object 
     (
      [movie_id] => 4 
      [movie_name] => Harvey 
      [genre_id] => 4 
      [genre_title] => Action/Adventure 
      [rating_id] => 2 
      [rating_title] => Pg-16 (USA) 
      [person_id] => 14 
      [person_name] => John Beck 
      [role_title] => producer 
     ) 

    [1] => stdClass Object 
     (
      [movie_id] => 4 
      [movie_name] => Harvey 
      [genre_id] => 4 
      [genre_title] => Action/Adventure 
      [rating_id] => 2 
      [rating_title] => Pg-16 (USA) 
      [person_id] => 15 
      [person_name] => Henry Koster 
      [role_title] => directer 
     ) 

    [2] => stdClass Object 
     (
      [movie_id] => 4 
      [movie_name] => Harvey 
      [genre_id] => 4 
      [genre_title] => Action/Adventure 
      [rating_id] => 2 
      [rating_title] => Pg-16 (USA) 
      [person_id] => 16 
      [person_name] => Mary Coyle Chase 
      [role_title] => writer 
     ) 

    [3] => stdClass Object 
     (
      [movie_id] => 4 
      [movie_name] => Harvey 
      [genre_id] => 4 
      [genre_title] => Action/Adventure 
      [rating_id] => 2 
      [rating_title] => Pg-16 (USA) 
      [person_id] => 17 
      [person_name] => Oscar Brodney 
      [role_title] => writer 
     ) 

    [4] => stdClass Object 
     (
      [movie_id] => 4 
      [movie_name] => Harvey 
      [genre_id] => 4 
      [genre_title] => Action/Adventure 
      [rating_id] => 2 
      [rating_title] => Pg-16 (USA) 
      [person_id] => 18 
      [person_name] => Myles Connolly 
      [role_title] => writer 
     ) 

) 
+0

Я не понимаю. Это утверждение, вопрос или несколько предложений? – Qwerty

+0

его вопрос, который я задаю, можно получить все из них в одном массиве – Fawaz

+0

Это вопрос ** dot ** Я прошу **, если ** можно получить все из них в одном массиве ** dot * * – Qwerty

ответ

1

Не совсем уверен, чего вы пытаетесь достичь. Чтобы напечатать только некоторые члены стараются сделать это:

foreach ($your_array as $key => $value) { 

    echo '<pre>'; 
    echo $value->person_id . " "; 
    echo $value->person_name . " "; 
    echo $value->role_title . " "; 
    echo "\n"; 
    echo '</pre>'; 
} 

И если вы можете распечатать его, вы можете сохранить его в новый массив, однако вы хотите.

+0

Я думаю, что есть проблема в моем массиве – Fawaz

+0

Есть ли способ кодировать этот массив в одном json – Fawaz

+0

У вас есть массив объектов. Вы можете получить доступ к каждому объекту с помощью 'array [index]'. Вы можете присоединяться к объектам объекта 'object-> member'. В целом это что-то вроде этого: 'array [0] -> member'. Это то, что делает foreach. Затем вы можете сохранить эти значения в новый массив и преобразовать этот массив. – Qwerty

0

Это то, что вы хотите:

echo '<pre>'; 

foreach ($arr as $key => $value) { 
    $newarray[$key]["person_id"] = $value->person_id; 
    $newarray[$key]["person_name"] = $value->person_name; 
    $newarray[$key]["role_title"] = $value->role_title; 
} 

// var_dump($newarray); 
$json = json_encode($newarray); 
echo $json; 

echo "</pre>"; 

Вы должны прочитать некоторые учебники. Это настоящие основы.

+0

это приводит к [{"person_id": "1", "person_name": "Samuel Goldwyn", "role_title": "производитель"}, {"person_id": "2", "person_name": "George Fitzmaurice" , "role_title": "directer"}, {"person_id": "3", "person_name": "Dorothy Arzner", "role_title": "directer"}, {"person_id": "4", "person_name": «Alex Merces», «role_title»: «writer»}] – Fawaz

+0

Разве вы этого не хотели? – Qwerty