Если вы вызываете strtotime () для $ updated, я думаю, это уже не отметка времени UNIX.time () возвращает метку времени UNIX.
Если проверка не будет выглядеть следующим образом:
if(strtotime($modified) < $previous_day)
Таким образом, вы сравниваете метки времени UNIX и, учитывая, что $ item-> last_modified возвращает правильное значение, ваш код должен работать.
Если нет, убедитесь, что нет разницы во времени или часовом поясе между тем, что time () возвращает, и программным обеспечением, устанавливающим значение last_modified для ваших $ items (легко)проверить с некоторым отладочным выводом)