- ベストアンサー
PHP開始タグの直後の等号の意味を教えてください
以下のページにあるPHP開始タグの直後の等号の意味を教えてください。 http://nyx.pu1.net/practice/form/form2.php 以下の行の「=」の箇所です。 <form action="<?= $_SERVER['PHP_SELF']; ?>" method="post">
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
<?= は <?php echo の短縮形です。 細かい話ですが、php5.4.0以降この短縮形( <?= )はshort_open_tag( <? を有効にするかどうか)の設定に依存しなくなりました。 http://www.php.net/manual/ja/ini.core.php#ini.short-open-tag 今後は「 <? は無効だが <?= は使える」という環境が増えてきますね。
その他の回答 (3)
- yambejp
- ベストアンサー率51% (3827/7415)
ショートタグについてはすでに回答があるとおり phpの柔軟性の一つで簡潔に表記できる利点でもありますが、 正直このくらいならechoやらprintすればいいじゃん・・・ とも思える仕様ですね。 それより$_SERVER['PHP_SELF']は、いちぶセキュリティの問題もあり 最近ではあまりつかわれなくなっており、 $_SERVER['SCRIPT_NAME']を利用するケースが増えているようです。 詳細はググってみてください
お礼
ありがとうございます。 SCRIPT_NAMEについても、ありがとうございます。
- notnot
- ベストアンサー率47% (4900/10358)
通常の開始タグは、<?php です。 <? はショートタグというもので、php.ini で設定すると使えるようになります。( short_open_tag = On ) その場合、<?= は、<?php echo と同じになります。 普通はショートタグは使いません。
お礼
ありがとうございます。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 変数を表示します。 (ehcoの省略みたいな感じ)
お礼
ありがとうございます。
お礼
ありがとうございます。