Покинул форум
Сообщений всего: 23
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
как удалить из массива ключ и данные, если в данных отсутствует определенное слово еще и за определенный период.
массив выглядит так:
ключ:07.04.10 17:00
данные:текст и теги
в некоторых данных присутствует слово "like" .
Нужно убрать все данные которые не содержат это слово, для начала.
Задача вообще посчитать сколько слов "like" за семь дней, но пока только получилось все это собрать в массив.
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
belousov Можете использовать функцию филтрации http://www.php.su/functions/?array-filter и в задаваемой функции обратного вызова использовать необходимую проверку и формирование нового массива
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
belousov
Отправлено: 08 Апреля, 2010 - 15:01:15
Новичок
Покинул форум
Сообщений всего: 23
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
убрал время, теперь только дата, но он сравнивает как число, потому результат неправильный. Как можно сравнить его как дату?
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
belousov пишет:
убрал время, теперь только дата, но он сравнивает как число, потому результат неправильный. Как можно сравнить его как дату?
Лучший способ сравнивать дату и время это перевести их в формат timestamp с помощью функции http://www.php.su/functions/?strtotime и далее работать с ними как с обычными числами
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
belousov
Отправлено: 08 Апреля, 2010 - 16:49:42
Новичок
Покинул форум
Сообщений всего: 23
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
Теперь еще больше запутался. Мне надо считать ключ массива (который является датой), преобразовать в юних дату и засунуть в массив? или преобразовать, сравнить и выполнить действия? (Добавление)
не работает, точнее неправильно работает, насколько я понял потому что год "10" а не "2010". И месяц "04" а не просто "4".
Все нашел ($pm лишняя скобка.
Обьясните пожалуйста что такое "time()-60*60*24*7" здесь у меня по идее будет переменная введенная пользователем с даты - по дату.
В своем коде я хотел удалить все ключи больше указанной даты "с", потом все ключи меньше указанной даты "по", потом обработать все значения если в них есть like то некст иначе унсет. Только ничего не работает)))
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
belousov пишет:
В своем коде я хотел удалить все ключи больше указанной даты "с", потом все ключи меньше указанной даты "по", потом обработать все значения если в них есть like то некст иначе унсет. Только ничего не работает)))
Лучше бы вы хранили ключи в виде timestamp-времени - это поволяет точно удалять записи с момент создания которых прошла неделя без округления за счет простой проверки 60*60*24*7 - иначе вам приходится не только выполнять лишние преобразования но и проверять дополнительные временные условия
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.