Думаю читателям будет интересно, что IAD, кроме того, чтобы постить лыбдыбры, кое-что сделал для улучшения экологии планеты сайтостроителей.
Напоминаю, что есть uneval.com — мой сервис проверки PHP кода на вредоносные конструкции.
А теперь 5 копеек, почему не следует вставлять свеже-скачанный PHP код(тему, плагин, и.т.д.) сразу на сайт:
1. Там может быть бэкдор(PHP код дающий полноценный shell на ваш сервер, хостинг, VDS). Получив такой доступ можно просмотреть, изменить(если права позволяют) любой файл сайта. И файлы других Ваших сайтов. Это позволит использовать Ваши сайты в своих целях, или просто сломать их, или поместить мелкую трудно-отлавливаемую ошибку, изведя жертву до нервного срыва. =)
2. Разместить код в тему сайта, который будет отображать ссылки только поисковым роботам(клоакинг). Средства тёмного SEO.
Задача: Добавить в коллекцию страниц (pages), документ только в том случае, если ещё нет документов со значением ‘url’ равным вставляемому значению. Избежать дублирования страниц.
Условие: максимально быстро.
Решение:
1. Создаём уникальный индекс на коллекцию. поле ‘url’ с удалением дублирующихся.
2. Делаем bulk insert:
$pages — массив документов, для помещения в колекцию.
‘safe’=>false — игнорировать ошибки операции (в нашем случае, дублирование ‘url’ с документами в коллекции)
//Формируем массив из кучи документов$pages[]=array('url'=>$url,'site_id'=>$site->_id,'need_load'=>true);...$mongo->pages->batchInsert($pages,array('safe'=>false));
//Формируем массив из кучи документов
$pages[]=array
(
'url'=>$url,
'site_id'=>$site->_id,
'need_load'=>true
);
...
$mongo->pages->batchInsert($pages, array('safe'=>false));
По моим тестам, массив из 10-20 тысяч документов вставляется за пару секунд(думаю вся коллекция находится в памяти, данных не много)
Задача: Найти пользователей, у которых возраст менее 20 лет, и тех, у которых возраст не заполнен.
Постановка задачи: т.к. mongodb является schema-free СУБД, то наличие нашего поля age не является обязательным. Запрос должен выглядеть(на языке логики) следующим образом: age<20 or age is null
Проблема: на php адаптере mongodb запрос or должен выглядеть следующим образом:
Открыл для себя глобальную космическую стратегию(реалтайм само собой) distant worlds. Жутко затягивает. 100500 звёзд, куча планет, астероидов, аномалий, колоий. Экономика, исследования, война и всё такое.
На рутрекерtcnm бетта. Искать по названию игры. На elite-games качать руссификацию (на текущий момент ~20% перевода).