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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: обход масива и пропуск повторяющихся значений в массиве...

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
MBmusic
Отправлено: 31 Июля, 2013 - 10:16:51
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




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

PHP:
скопировать код в буфер обмена
  1.  
  2. $feed = // тут массив...
  3.  


потом делаю обход по этому массиву...

PHP:
скопировать код в буфер обмена
  1.  
  2. foreach ($feed as $entry)
  3.                 {
  4.                         $link = $entry->getLink();             
  5.                         $row = $r->getAddRss($link);
  6.                        
  7.                        
  8.                                 $data[] = array(
  9.                                                 'title'        => $entry->getTitle(),
  10.                                                 'link'         => $link,
  11.                                                 'description'  => $entry->getDescription(),
  12.                                                 'date'         => $entry->getDateModified()
  13.                                 );
  14.                                        
  15.                                 $r->insert($data[$i]);
  16.                                 break;
  17.  


щас в обходе у меня написан бред, мне нужно в обходе масива получить все ссылки, и если уже такие ссылки есть в массиве то тогда делаем break......как так сделать? в общем простыми словами идем по массиву ссылок, если найдена похожая запись то брейк...
 
 Top
EuGen Администратор
Отправлено: 31 Июля, 2013 - 10:21:52
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Ничего не понятно. Предварительно: in_array, array_search, array_filter


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
MBmusic
Отправлено: 31 Июля, 2013 - 10:26:49
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




при обходе массива я обхожу все его элементы правильно? и каждый раз я сравниваю есть ли такая ссылка в базе, если есть то break и мы не записываем эту запись так как такая ссылка уже есть в бд, иначе продолжаем запись....и так в обходе мы каждую ссылку проверяем в масиве....
(Добавление)
$r->getAddRss($link) возвращает результат выборки строки по ссылке из базы
 
 Top
LIME
Отправлено: 31 Июля, 2013 - 10:30:24
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




break -> continue
 
 Top
MBmusic
Отправлено: 31 Июля, 2013 - 10:35:48
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




я не знаю как написать условие в обходе......

PHP:
скопировать код в буфер обмена
  1.  
  2. $feed = Zend_Feed_Reader::import('http://www.nlm.nih.gov/medlineplus/feeds/news_en.xml');
  3.  


это я получаю записи с сайта...
потом я формирую обход записей



внутри обхода я получаю ссылки записи $link = $entry->getLink(); и получаю записи ссылок из базы $row = $r->getAddRss($link); вернее не записи и массив записей выбраных по ссылке...... и далее в обходе нужно сравнить есть ли такая запись в бд, поскольку по ссылке проверяем повторение поста......зачем дублирование в бд?
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB