11

これら 2 つのバージョンに速度の違いはありますか?

<?php echo $var; ?>

<?=$var?>

どちらをお勧めしますか、またその理由は何ですか?

4

10 に答える 10

15

パフォーマンスの違いはわずかです。しかもAPCを使えば性能差ゼロ、ヌル、ナダ。

<?短いタグは、XML 処理タグのマークアップでもあるため、XML 内で問題があります。したがって、移植性が必要なコードを作成している場合は、長い形式を使用してください。

http://www.php.net/manual/en/ini.core.phpshort_open_tagの説明を参照してください。

于 2009-03-19T16:27:44.743 に答える
5

いいえ、同じです。たくさん入力するのが好きなら を使い<?php echo $var; ?>、そうでなければ で時間を節約して<?=$var?>ください。

于 2009-03-19T16:20:38.957 に答える
4

どれをお勧めしますか

HTML インジェクションを本当に許可したい場合を除き、どちらでも構いません。(99% の場合、そうではありません。)

<?php echo htmlspecialchars($var); ?>

または、 echo(htmlspecialchars($arg)) を実行する関数を短い名前で定義して、すべての入力を回避します。

于 2009-03-19T17:24:28.617 に答える
4

PHP 5.3 では、短いタグの ASP スタイルの <% %> サポートが非推奨になります。これを回避し、コードを に書き直してください。たとえば、インラインを'<?php echo' format使用できないためです。<?xml ?>

于 2009-03-19T16:26:17.133 に答える
2

速度の違いは、これらの 9 つの余分な文字をどれだけ速く入力できるかによって異なります。
コードの可読性も向上しますが、これには議論の余地があります。

実行速度について話している場合、顕著な違いはありません。

于 2009-03-19T18:04:07.867 に答える
2

2 つ目は、short_open_tag (PHP.ini 内) を true に設定する必要があると思います。

つまり、一部の Web サーバーではオフになっている可能性があります。

于 2009-03-19T16:27:30.830 に答える
0

これらで最適化しようとしないでください。無駄です。代わりに、allow_short_tags を無効にし (XML ファイルのロード時に問題が発生するため)、クリーンで読みやすく、理解しやすいコードを記述します。

わずかな違い (10% 未満であることは間違いありません) があったとしても、それを最適化するのは役に立ちます。スクリプトが遅い場合は、最初にループを調べてください。ほとんどの場合、奇妙な構文を使用するよりも、プログラム フローを最適化することで、より多くのパフォーマンスを得ることができます。

于 2009-08-12T08:56:47.473 に答える