40 советов по оптимизации вашего PHP-кода

Всем доброго времени суток.

Перевод заметки "40 Tips for optimizing your php code". Автор — Reinhold Weber.


  1. Если метод может быть статическим, объявляйте его статическим.

  2. echo быстрее, чем print.

  3. Передавайте в echo несколько параметров, вместо того, чтобы использовать конкатенацию строк.

  4. Устанавливайте максимальное количество проходов ваших циклов for до цикла, а не во время его выполнения.

  5. Удаляйте свои переменные для освобождения памяти, тем более, если это большие массивы.

  6. Остерегайтесь магических методов, таких как __set, __get, __autoload.

  7. require_once дорого обходится.

  8. Указывайте полные пути в конструкциях include/require, меньше времени будет тратится на поиск файла.

  9. Если вам необходимо определить время, когда скрипт был запущен, используйте $_SERVER[’REQUEST_TIME’] вместо time().

  10. Старайтесь использовать strncasecmp, strpbrk и stripos вместо регулярных выражений.


  11. str_replace быстрее, чем preg_replace, но strtr быстрее, чем str_replace.

  12. Если функция, как и функции замены строк, может принимать в аргументы как массивы, так и одиночные символы, и если ваш список аргументов не слишком длинный, подумайте над тем, чтобы записать несколько одинаковых выражений замены, проходя один символ за раз, вместо одной строки кода, которая принимает массив как аргумент поиска и замены

  13. Лучше выбирать утверждения при помощи конструкции else if, чем использовать несколько конструкций if.

  14. Подавление ошибок при использовании @ работает очень медленно.

  15. Используйте модуль Apache mod_deflate.

  16. Закрывайте свои соединения с БД, когда закончите работать с ними.

  17. $row['id'] в семь раз быстрее, чем $row[id].

  18. Сообщения об ошибках дорого стоят

  19. Не используйте функции внутри условия цикла for, например как здесь: for ($x=0; $x
  • 0
  • 2 июня 2010, 04:30
  • 0x00

Комментарии (0)

RSS свернуть / развернуть

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.