ホームページ  >  記事  >  バックエンド開発  >  PHP解析の問題について

PHP解析の問題について

WBOY
WBOYオリジナル
2016-06-20 12:41:27965ブラウズ

php ドキュメントで
$demo = '';
echo $demo;
エコーされた内容に 123 が表示されていないことがわかりました。 Web ページのソース コードを確認したところ、コードが であることがわかりました。これは解析されるべきではありませんでした。

その理由を知っている人はいますか?
そして、エコーが出た後も文字列内の PHP コードを実行させる方法。


ディスカッションへの返信 (解決策)

echo $
$demo は文字列なので、そのまま出力されます。

eval('?>' . $demo);
そのまま使用できます。 php echo " 123"; を実行しました

eval('?>' . $demo); その中の 123 は確かに実行されましたが、このメソッドをプロジェクトに適用するとエラーが発生しました

以下は文字列を置換して出力する処理です


以下はエラーです




エラーメッセージが明確に書かれており、未定義の定数があります。

具体的には、最初に eval となるステートメントを出力します


実際には、タグを置き換えた後、それを *.php ファイルとして保存するだけです

。実行するための php をインクルードするだけです。評価する必要はありません。


実際には、タグを置き換えた後、それを *.php ファイルとして保存し、それを実行するための php コードをインクルードするだけです。必須。


ありがとうございます!以前に eval を使用したときにエラーが報告および出力されましたが、コメントされたすべての php ステートメントはページのソース コードで表示できます。 。 。

正しい解決策は、コンパイルされた文字列を .php ファイルに保存し、それをインクルードすることです
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。