2006年07月21日

PHP文字出力のパフォーマンス比較について

前から気になっていたのですが、PHPで文字を出力する際に、どのくらいパフォーマンスの差が出るのか、いろいろな手法で試している記事を見つけました。

シングルクオート<ダブルクオート<ヒアドキュメント<printf関数
(速い<遅い)

という順になるようです。やはり、高機能なものほど遅くなるようですね。

<ブラウザへの出力>
Single quotes: 2,813 ms
...with concatenation: 1,179 ms
Double quotes: 5,180 ms
...with concatenation: 3,937 ms
heredoc: 7,300 ms
...with concatenation: 6,288 ms
printf: 9,527 ms
...with concatenation: 8,564 ms
(with concatenation は、.を使用して一部を変数に置き換えた場合です)

<出力バッファへの出力>
Single quotes: 8 ms
...with concatenation: 38 ms
Double quotes: 8 ms
...with concatenation: 47 ms
heredoc: 17 ms
...with concatenation: 49 ms
printf: 54 ms
...with concatenation: 52 ms

グラフは以下です。
http://i3x171um.com/output_benchmarks/ob.gif

ソースコードも公開されています。
http://i3x171um.com/output_benchmarks/ob.txt


参考:PHPドキュメントのecho関数のページ(phpnet at i3x171um dot com
氏)
posted by PHP初心者@blogger at 00:00| PHP | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。