Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите с объединением массивов
 
 автор: Keyses   (23.02.2011 в 16:55)   письмо автору
 
 

$data['categories']
$data['subcategories'] 
$data['page_content'] = Array ( [id],  [category_id], [title], [content], [keywords], [description], [name], [parent_id], [level])


затем я из библиотеки подгружаю другой массив:
$data['cities']
$data['scripts_to_load']
$data['search_results']
$data['page_content']['content']


И мне их надо объединить, всё бы ничего, но они пересекаются по $data['page_content']['content'], и мне нужен только тот, что из библиотеки. Не получается объединить именно $data['page_content'], т.к. $data['page_content']['content'] из библиотеки затирает ранее описанный $data['page_content'].
В результате должно быть:
$data['categories']
$data['subcategories'] 
$data['page_content'] = Array ( [id],  [category_id], [title], [content], [keywords], [description], [name], [parent_id], [level])
$data['cities']
$data['scripts_to_load']
$data['search_results']


Как нормально сделать, помогите пожалуйста....

  Ответить  
 
 автор: Красная_шляпа   (23.02.2011 в 17:03)   письмо автору
 
   для: Keyses   (23.02.2011 в 16:55)
 

файловый движок?

  Ответить  
 
 автор: Keyses   (23.02.2011 в 17:05)   письмо автору
 
   для: Красная_шляпа   (23.02.2011 в 17:03)
 

CodeIgniter

  Ответить  
 
 автор: Keyses   (23.02.2011 в 17:41)   письмо автору
 
   для: Keyses   (23.02.2011 в 16:55)
 

Пока что решилось так:
$data['page_content']['content'] = $lib_data['page_content']['content'];
unset($lib_data['page_content']);
$data = array_merge($data, $lib_data);


Но может есть другой способ?

  Ответить  
 
 автор: sim5   (23.02.2011 в 17:45)   письмо автору
 
   для: Keyses   (23.02.2011 в 17:41)
 

А какой вам еще способ нужен? Единственно, что array_merge может изменять ключи, так что в случае чего, проще:
$data += $lib_data;

  Ответить  
 
 автор: sim5   (23.02.2011 в 17:43)   письмо автору
 
   для: Keyses   (23.02.2011 в 16:55)
 

Удаляйте ключ библиотечный и объеденяйте, в чем проблема?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования