これにはすでにいくつかの答えがありますが、0.02ドルを追加するだけです...
このコード:
<?php
$test = '<?php echo "hello world!"; ?>';
echo $test;
?>
ブラウザーに空白の白い画面が表示されますが、ソースを表示すると、次の出力が表示されます。
<?php echo "hello world!"; ?>
これは、ブラウザが PHP コードをレンダリングする方法に関係しています。ブラウザーは PHP コードをレンダリングするためのものではなく、HTML マークアップをレンダリングするためのものです。ファイルに何が書き込まれるかをテストするためにコードをエコーアウトしている場合は、ソースを表示して、出力されているものがファイルに書き込もうとしているものであることを確認してください。属性?php
をどう処理するかは言うまでもなく、タグをレンダリングする方法がわからないため、ブラウザ自体には表示されません。echo
必要に応じて、誰もが既に述べたようhtmlspecialchars
に、ソースを表示せずにブラウザーでレンダリングすることだけが必要な場合は、文字列を渡すことができます。ファイルに書き込んでいる場合はそうしたくないでしょうが、出力をデバッグするのに役立つ場合があります。
別のオプションは、コマンド ラインからスクリプトを実行することです。出力をレンダリングしようとせず、代わりにそのまま吐き出します。