PHPでウェブの世界と繋がろう!
menu
ホーム > PHPテクニック > PHP実行時間の短縮

PHP実行時間の短縮

Pocket

echo の使用

echo で十分な箇所に printf() を使用しない。

echo と「,(カンマ)」の使用

悪い例

よい例

ループ処理

悪い例

$i<count($array);がループ回数分実行される

良い例

$max = count($array);1度だけ実行される

インクルード

インクルードファイルは必要最低限のファイルのみにすること

簡単な文字列処理に正規表現は使用しない

簡単な文字列処理に正規表現は使用しない。単純な文字置換なら preg_replace() でなく strtr() を使用する。

PHP最適化テクニック

参照記事:http://www.moskalyuk.com/blog/php-optimization-tips/1272

参照記事:http://phpspot.org/blog/archives/2006/11/12php.html

POINT

  • PHP7を使用する
  • staticメソッドが使えるなら使う。速度は4倍になる
  • __get, __set, __autoload は使わない
  • require_once は重い
  • include, requireで読み込むファイルはフルパスにする
  • スクリプト開始時のUNIXタイムを $_SERVER['REQUEST_TIME'] で取得
  • strncasecmp関数 や strpbrk関数 を使えるケースはこれらを使い、正規表現は使わない
  • preg_replace は str_replace より速い、しかし、strtr は preg_replace より4倍速い
  • 引数を、単体か配列かで自動判別するようなコードは出来るだけ避ける
  • @ を使ったエラー制御はとても遅い。→ @fputs($fp, "?");
  • $row["id"] は $row[id] より7倍速い
  • PHPのエラーメッセージは重い( noticeとかwarningとか)
  • for ($i=0; $i<count($array); $i) のように、forの中でcountを使うと毎回countが呼ばれるので使わない

タグ(=記事関連ワード)

日付

投稿日:2011年11月19日
最終更新日:2017年03月26日

関連記事

配列関数サンプル

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

http://www.tryphp.net/phpref-tech_exeshortcut/trackback/