アンパサンドの文字列で表示することはできませんのブラウザ

StackOverflow https://stackoverflow.com/questions/1858611

  •  13-09-2019
  •  | 
  •  

質問

私の印刷文字列として以下の

コード:

echo "&words=".$rs['pw']."&"; 

出力:

という=援|Good

通知が最後 & 印字されない。

しかし追加スペース文字の後に & してその印刷物として以下の

コード:

echo "&words=".$rs['pw']."& "; 

出力:

という=るために|も

現在 & は印刷済。

なぜそのことをいただきましたことでしょうか?

役に立ちましたか?

解決

あなたがWebブラウザに出力している場合は、&amp;を使って、&をエスケープしなければならない「&」HTML内の文字列をエスケープするために多くのことを使用され、URLのように<のように、特殊な文字である>など

他のヒント

あなたは、Webページでそれを出力している場合は、

、ブラウザは特別な&を解釈します。お使いのブラウザで「ソースを表示」で選択して、あなたは生の出力が表示されます。あなたはそれがHTMLのコンテキストに表示されるように必要がある場合は、それを印刷する前にhtmlspecialcharsて文字列を渡す必要があります。だから、ます:

$rs['pw'] = "Help|Good";
echo htmlspecialchars("&words=".$rs['pw']."&");

このコードを作っ

$rs['pw'] = "Help|Good";
echo "&words=".$rs['pw']."&";

出力

という=るために|も

つながっているのですかの文脈かここはどこのコードを出力する走行では、ウェブサーバの閲覧ブラウザ?はありませんその他のコードに関与できる希薄化の原因なのでしょうか?

場合、コンテキストのようなものを出力するHTMLしてきていることを確認してくださいに位置しています。HTMLにおけるアンパサンドは特別だから、脱出します。通常、その翻訳 &amp;

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top