PHP の短縮タグは使用できますか? 質問する

PHP の短縮タグは使用できますか? 質問する

情報はこちら公式文書によると:

PHP で使用できる開始タグと終了タグのペアは 4 つあります。そのうちの 2 つ、<?php ?><script language="php"> </script>は常に使用できます。他の 2 つはショート タグと ASP スタイル タグで、php.ini 構成ファイルからオンとオフを切り替えることができます。そのため、ショート タグと ASP スタイル タグは便利だと感じる人もいますが、移植性が低く、一般的には推奨されません

私の経験では、ほとんどのサーバーで短縮タグが有効になっています。

<?=

入力するよりはるかに便利です

<?php echo 

プログラマーの利便性は重要な要素ですが、なぜ推奨されないのでしょうか?

ベストアンサー1

PHPのショートタグ(<?)とショートハンドエコータグ(<?=)を明確に区別する必要があります。

前者は、PHPコーディング標準ほとんど常識から外れています。なぜなら、サポートされていない (そして有効にできない) サーバーにコードを移動する必要がある場合、面倒だからです。おっしゃるとおり、多くの共有ホストはショートタグをサポートしていますが、「多く」がすべてではありません。スクリプトを共有する場合は、完全な構文を使用するのが最善です。

一方、短縮形の echo タグは<?=無効にすることはできないため、使用しても問題ありません。

確かに、<?プログラマーにとってはそれがより簡単です<?phpが、毎回同じフォームを使用する限り、一括検索と置換を行うことは可能です。

読みやすさを理由にはまったく考えていません。真剣に取り組む開発者のほとんどは、構文の強調表示のオプションを利用できます。

ThiefMasterがコメントで述べているように、PHP 5.4以降では、<?= ... ?>ショートタグの設定に関係なく、タグはどこでもサポートされます。. これは、移植可能なコードで使用しても安全であることを意味しますが、PHP 5.4 以降に依存することを意味します。5.4 より前のバージョンをサポートしたいが、ショートタグを保証できない場合は、 を使用する必要があります<?php echo ... ?>

また、知っておく必要があるのはASP タグ <% 、 %> 、 <%= 、およびスクリプト タグは PHP 7 から削除されました。したがって、長期的に移植可能なコードをサポートし、最新のツールに切り替えたい場合は、コードのその部分を変更することを検討してください。

おすすめ記事