Архив рубрики ' PHP '

10 советов по улучшению PHP кода

Wednesday, August 29th, 2007

После правки очередного кода моих предшественников по проекту, решил выложить десяток советов по улучшению PHP кода.

  1. Используйте error_reporting(E_ALL) - это поможет избежать многих неприятностей
  2. Всегда определяйте переменные перед использованием (при error_reporting(E_ALL) интерпретатор напомнит Вам об этом сообщением )
  3. Форматируйте свой код
  4. Документируйте свой код или пишите самодокументированный код
  5. Проверяйте свой код на ошибки (как было где-то написано: Вы делаете ошибки. Да, да. Именно Вы.)
  6. Пользуйтесь советами по улучшению производительности PHP
  7. Не пишите функций, которые уже реализованы в самом PHP, внимательно читайте manual
  8. Используйте паттерны
  9. Не реализовывайте средствами PHP то, что можно реализовать средствами БД
  10. Производите рефакторинг кода

NuSOAP и PHP 5

Friday, July 27th, 2007

Оказывается, для работы NuSOAP в PHP 5 (а работа эта нужна лишь для того чтобы не переписывать старый код, т.к. в PHP 5 есть SOAP расширение, которое написано на Си и выигрывает в скорости у всех реализаций SOAP написанных на PHP) необходимо поменять имя класса и конструктора soapclient. Т.к. это имя класса совпадает с именем в SOAP расширении PHP 5.

О производительности в PHP

Tuesday, May 15th, 2007

Давно пользуюсь темплитным движком Smarty, поэтому echo не использую. Но обстоятельства сложились таким образом, что надо было быстро набросать код и показать его работоспособность заказчику. В скрипте был следующий кусок кода:

foreach ($a_servers as $val)
{
  echo ‘Что-то выводилось’;
  //далее выполнялись какие-то действия
  echo ‘Потом снова был вывод’;
}

Массив $a_servers оказался большим (больше 2000 элементов) и скрипт выполнялся долго.

Заменил код на следующий:

$message = ”;
foreach ($a_servers as $val)
{
  $message .= ‘Что-то выводилось’;
  //далее выполнялись какие-то действия
  $message .= ‘Потом снова был вывод’;
}
echo $message;

Время выполнения скрипта уменьшилось на 2 секунды!

Вывод: если вы знаете как повысить производительность, не ленитесь и всегда делайте это.

Zend Developer Zone жжет!

Wednesday, March 14th, 2007

Уже второй день на Zend Developer Zone висит сообщение с необычным, на мой взгляд заглавием - Adobe Survey for PHP Develoeprs.
Adobe Survey for PHP Develoeprs
Так что если считаете себя ДЕВЕЛОЕПЕРОМ, то Adobe сделал для вас опрос :)

Кэширование в PHP

Wednesday, March 7th, 2007

Недавно опять просматривал слайды с php конференций по теме производительность на http://talks.php.net от Ilia Alshanetsky. В который раз меня поразил этот слайд: (more…)