Построить хитрый индекс для каждой картинки, который будет включать, например, пропорции/цветность/общую плотность/плотность в каждой четверти/ и т.п.
И потом всё это сравнить. Картинки, у которых параметры совпадут, скорее всего одинаковые.
Всё зависит от настроек системы и программного обеспечения.
Сервер должен использовать память по-максимуму.
Если своп не растёт — всё в порядке.
Оперативная память нужна для ускорения доступа к данным.
Данные с жёсткого диска помещаются в оперативную память и используются :)
Если бы память не использовалась, она была бы не нужна :)
P.S. Если после того, как "закончится" память, у вас растёт своп, значит вам нужно больше памяти.
Проверьте, может в базе данных какая-нибудь таблица с какой-нибудь статистикой выросла до гигантских размеров.
Почитайте тут, как правильно отправлять письмо
http://www.gig.ru/support.php?p=development#php_send_mail
Возможно.
Вам понадобится знание какого-либо веб-ориентированного языка программирования, и, возможно, знание какой-либо СУБД.
Чтоже вы мне так не верите-то :)
Код:
$str='a'.str_repeat('b',1048576).'c'; echo 'pcre.backtrack_limit = '.ini_get('pcre.backtrack_limit').'<br>'; echo 'strlen($str) = '.strlen($str).'<br>'; if (preg_match('/(ab+c)/',$str,$matches)) { echo 'strlen($matches[1]) = '.strlen($matches[1]); }
Результат:
pcre.backtrack_limit = 100000 strlen($str) = 1048578 strlen($matches[1]) = 1048578
Это ограничение на количество операций backtracking-а, а не на размер обрабатываемых данных.
(Такое же ограничение есть на количество рекурсивных операций)
Для проверки возьмите, да пропарсьте файлик мегабайт 10.
Да нет у preg_match никаких ограничений на длину строки. Можно хоть гигабайт парсить. Если памяти хватит :D
Чтобы сделать поиск по результату выполнения php-файла, нужно этот php-файл выполнить :) А искать по его внутренностям смысла нет.
Выполнить php-файл можно разными способами.
Например, с помощью функции eval или exec.