ホームページ  >  記事  >  バックエンド開発  >  PHP 補完タグの使用に関する詳細?>

PHP 補完タグの使用に関する詳細?>

WBOY
WBOYオリジナル
2016-06-13 12:56:19782ブラウズ

PHP 終了タグの使用に関する詳細?>

  作者:zhanhailiang 日期:2013-01-17

PHP はファイルを解析するときに、開始タグ 5fe02077477b4b91a42a37f78928ccf1 を探します。これらは、PHP にファイル内のコードの解釈を開始および停止するように指示します。 この解析方法を使用すると、PHP をさまざまなドキュメントに埋め込むことができ、開始タグと終了タグのペアの外側にあるコンテンツは PHP パーサーによって無視されます。ほとんどの場合、PHP は HTML ドキュメントに埋め込まれます。

単一行コメントは、行末または PHP コードの現在のブロックのどちらか先に来る方のみにコメントします。 これは、 // ... ?> または # ... ?> の後の HTML コードが表示されることを意味します。または # これには影響しません。

上記の説明から、// コメントに ?> が含まれている場合でも、PHP パーサーは PHP 解析が完了したとみなします (PHP の終了タグ ?> が検出された場合、次の開始タグが検出されるまで、その後のコンテンツはそのまま出力されます (新しい行が続く場合を除き、コマンド区切り文字を参照)。

<span class="kw2" style="color:rgb(0,0,0); font-weight:bold"><?php</span><span style="color:#333333">
 
</span><span class="co1" style="color:rgb(128,128,128); font-style:italic">//$a = '<a href="test.html" title="#">test</a><a href="test.html" title="#">test</a>';</span><span style="color:#333333">
</span><span class="co1" style="color:rgb(128,128,128); font-style:italic">//preg_match_all('|<a[^>]&#43;href="([^\"]*)".*</span><span class="co1" style="font-style:italic"><span style="color:#ff0000"><strong>?></strong></span></span><span style="color:#333333">|', $a, $b);
//print_r($b);</span>

出力は次のとおりです:

<span style="color:#333333">:!php preg.php
</span><strong><span style="color:#ff0000">|', $a, $b);
//print_r($b);</span></strong>

上記の問題を解決するにはどうすればよいですか?または、次のように /* */ を使用してコメントするか、?> を文字列連結で接続します。

<span class="kw2" style="color:rgb(0,0,0); font-weight:bold"><?php</span><span style="color:#333333">
 
</span><span class="re0" style="color:rgb(0,0,255)">$a</span><span style="color:#333333"> </span><span class="sy0" style="color:rgb(102,204,102)">=</span><span style="color:#333333"> </span><span class="st_h" style="color:rgb(51,51,51)">'<a href="test.html" title="#">test</a><a href="test.html" title="#">test</a>'</span><span class="sy0" style="color:rgb(102,204,102)">;</span><span style="color:#333333">
</span><span class="kw3" style="color:rgb(0,0,102)">preg_match_all</span><span class="br0" style="color:rgb(102,204,102)">(</span><span class="st_h"><span style="color:#333333">'|<a[^>]&#43;href="([^\"]*)".*</span><strong><span style="color:#ff0000">?'</span></strong></span><span class="sy0"><strong><span style="color:#ff0000">.</span></strong></span><span class="st_h"><strong><span style="color:#ff0000">'></span></strong><span style="color:#333333">|'</span></span><span class="sy0" style="color:rgb(102,204,102)">,</span><span style="color:#333333"> </span><span class="re0" style="color:rgb(0,0,255)">$a</span><span class="sy0" style="color:rgb(102,204,102)">,</span><span style="color:#333333"> </span><span class="re0" style="color:rgb(0,0,255)">$b</span><span class="br0" style="color:rgb(102,204,102)">)</span><span class="sy0" style="color:rgb(102,204,102)">;</span><span style="color:#333333">
</span><span class="kw3" style="color:rgb(0,0,102)">print_r</span><span class="br0" style="color:rgb(102,204,102)">(</span><span class="re0" style="color:rgb(0,0,255)">$b</span><span class="br0" style="color:rgb(102,204,102)">)</span><span class="sy0" style="color:rgb(102,204,102)">;</span>

この詳細は、JS 終了タグ2cacc6d41bbb37262a98f745aa00fbf0

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