2013-02-20 3 views
-4

У меня есть массив объектов stdClass ниже, но я хочу объединить элементы в один массив, как показано ниже;Объединить элементы двух массивов в один массив в PHP

Текущий массив

Array 
(
    [0] => stdClass Object 
     (
      [photoid] => pht11a138355.jpg 
      [propertyid] => PTY698082F7A 
      [phototitle] => N/A 
      [photodescription] => N/A 
      [coverphoto] => 1 
      [photovisible] => 1 
     ) 

) 

Array 
(
    [0] => stdClass Object 
     (
      [photoid] => phtd9d04dc92.jpg 
      [propertyid] => PTY7419F7A38 
      [phototitle] => N/A 
      [photodescription] => N/A 
      [coverphoto] => 1 
      [photovisible] => 1 
     ) 

) 

То, что я хотел бы достичь;

Array 
(
    [0] => stdClass Object 
     (
      [photoid] => pht11a138355.jpg 
      [propertyid] => PTY698082F7A 
      [phototitle] => N/A 
      [photodescription] => N/A 
      [coverphoto] => 1 
      [photovisible] => 1 
     ) 
    [1] => stdClass Object 
     (
      [photoid] => phtd9d04dc92.jpg 
      [propertyid] => PTY7419F7A38 
      [phototitle] => N/A 
      [photodescription] => N/A 
      [coverphoto] => 1 
      [photovisible] => 1 
     ) 
) 

Можно ли это сделать в PHP

Это является частью сценария, который я использую;

foreach ($data['searchresults'] as &$row) { 

$photo_array = $this->Properties_model->getimg($row->propertyid); 

$photodata = $this->Properties_model->getimg($row->propertyid); 

$data['photos'] = arrayToObject($photo_array); 

echo '<pre>'; 
print_r($photo_array); 
} 

ответ

1

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

<?php 

$arr1 = Array(array(
      "photoid" => "pht11a138355.jpg", 
      "propertyid" => "PTY698082F7A", 
      "phototitle" => "N/A", 
      "photodescription" => "N/A", 
      "coverphoto" => 1, 
      "photovisible" => 1 
      ) 
); 

$arr2 = Array(array(
      "photoid" => "phtd9d04dc92.jpg", 
      "propertyid" => "PTY7419F7A38", 
      "phototitle" => "N/A", 
      "photodescription" => "N/A", 
      "coverphoto" => 1, 
      "photovisible" => 1 
     ) 
); 

$array = array_merge($arr1,$arr2); 

echo "<pre>"; 
print_r($array); 
?> 
1

array_merge.

$result = array_merge($array1, $array2); 
+0

Спасибо, я попробую его. – Cybermatatu

0

array_merge уже доступен

<?php 
$beginning = 'foo'; 
$end = array(1 => 'bar'); 
$result = array_merge((array)$beginning, (array)$end); 
print_r($result); 
?> 

Взятые из PHP документации. Вы должны были увидеть его первым.

Array 
    (
     [0] => foo 
     [1] => bar 
    ) 
+0

Спасибо, я обязательно проверю это! – Cybermatatu

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