Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Создание многомерного массива
Форумы портала PHP.SU » » Вопросы новичков » Создание многомерного массива

Страниц (1): [1]
 

1. EuRusik - 08 Декабря, 2016 - 14:09:15 - перейти к сообщению
Есть 3 foreach цикла

PHP:
скопировать код в буфер обмена
  1. for ($i = 0; $i < 2; $i++)
  2.         {
  3.  
  4.             foreach ($this->objDom->find($this->title) as $title)
  5.             {
  6.                 $article['title'] = $title->plaintext;
  7.             }
  8.  
  9.             foreach ($this->objDom->find($this->imgTitle) as $imgTitle)
  10.             {
  11.                 $article['img'] = $imgTitle->url;
  12.             }
  13.  
  14.             foreach ($this->objDom->find($this->text) as $text)
  15.             {
  16.                 $article['text'] = $text->innertext;
  17.             }
  18.  
  19.             $arrayNews[] = $article;
  20.  
  21.         }
  22.  
  23. print_r($arrayNews);


Получаю 2 дублирующих массива.

PHP:
скопировать код в буфер обмена
  1. (
  2.     [0] => Array
  3.         (
  4.             [title] => Заголовок 1
  5.             [img] => http://site.com/img1.png
  6.             [text] => Текст 1
  7.         )
  8.     [1] => Array
  9.         (
  10.             [title] => Заголовок 1
  11.             [img] => http://site.com/img1.png
  12.             [text] => Текст 1
  13.         )

Я понимаю что каждый раз foreach перезаписывает данные и в массив попадает только последнее, но как сделать чтобы попадало в массив arrayNews все данные а не последние?

PHP:
скопировать код в буфер обмена
  1. (
  2.     [0] => Array
  3.         (
  4.             [title] => Заголовок 1
  5.             [img] => http://site.com/img1.png
  6.             [text] => Текст 1
  7.         )
  8.     [1] => Array
  9.         (
  10.             [title] => Заголовок 2
  11.             [img] => http://site.com/img2.png
  12.             [text] => Текст 2
  13.         )
2. Krava - 08 Декабря, 2016 - 14:57:17 - перейти к сообщению
Добавлять ключ
3. EuRusik - 08 Декабря, 2016 - 15:11:43 - перейти к сообщению
Krava пишет:
Добавлять ключ

Масив дублируеться всеравно Недовольство, огорчение

PHP:
скопировать код в буфер обмена
  1. (
  2.     [0] => Array
  3.         (
  4.             [0] => Array
  5.                 (
  6.                     [title] => Заголовок 1
  7.                     [img] => http://ссылка1.jpg
  8.                     [text] => Текст 1
  9.                 )
  10.  
  11.         )
  12.  
  13.     [1] => Array
  14.         (
  15.             [0] => Array
  16.                 (
  17.                     [title] => Заголовок 1
  18.                     [img] => http://ссылка1.jpg
  19.                     [text] => Текст 1
  20.                 )
  21.  
  22.         )


Единственное это когда все загуржаеться если ставить
PHP:
скопировать код в буфер обмена
  1.  $article[]['title']
или
PHP:
скопировать код в буфер обмена
  1.  $article['title'][]


Но там сразу пачка title потом пачка img и т.д. А мне надо title,img,text потом следющий title,img,text!

 

Powered by ExBB FM 1.0 RC1