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 | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

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