А если по существу, то почему бы не воспользоваться более подходящими для таких задач инструментами, например:
<?php $str = 'Test & test & test'; $replace_pairs = array('&' => '&', '&' => '&'); echo strtr($str, $replace_pairs); ?>
Дополнив массив замен другими сущностями, которые нужно оставлять неизменными, при необходимости.
Разве htmlspecialchars не делает & -> &amp; ?
Наверное потому, что обрезание и масштабирование не одно и то же. Но непонятно, что конкретно нужно ОПу.
Как много результатов во вложенном подзапросе? По something индекс построен?
Оп хочет с сохранением пропорций. Может таким простым jQuery кодом? https://jsfiddle.net/e1or1z0b/
Что вы заладили с этим пейджспидом? Кто вообще смотрит на их рекомендации бредовые? Предлагаете кешировать у клиентов JS, который ротирует рекламу?
То чувство, когда у кота жизнь насыщенее, чем у тебя.
Мне кажется, лучше напрямую использовать imagemagick, гибче получится. Ведь обоя должна остаться обоей (иметь приемлемое разрешение, качественную интерполяцию при изменении размера и т.п.).---------- Добавлено 22.11.2016 в 22:20 ----------К тому же, итоговые размеры файлов могут (при прочих равных) сильно отличаться. Возможно, у вас просто не оптимальным образом закодированы картинки и стоит заняться этим, вместо того, чтобы прикручивать изменение "на лету"?
Ну мы ж не знаем, может место кончилось на тарифе Host-0 какого-нибудь регру, а сами обои качают в день 10 калек.
Просто нужно продумать грамотный и в то же время оптимальный кеш (с ротацией и на основе популярности картинок).