$ reply = "blah blah blah> <blah blah blah"; (> <は韓国で人気のある絵文字です)
しかし、「strip_tags」を使用して$ reply内のすべてのhtmlおよびphpタグを削除すると、「<」の後のすべての文字が削除されます。
私はstrip_tagsが混同されていると思います。
この問題を解決するための解決策はありますか?
$ reply = "blah blah blah> <blah blah blah"; (> <は韓国で人気のある絵文字です)
しかし、「strip_tags」を使用して$ reply内のすべてのhtmlおよびphpタグを削除すると、「<」の後のすべての文字が削除されます。
私はstrip_tagsが混同されていると思います。
この問題を解決するための解決策はありますか?
文字列を呼び出す場合は、文字列をHTMLとして扱っていますstrip_tags()
。したがって、これらのエンティティは、使用する前にエンコードする必要が<
あります。そうしないと、HTMLタグの開始と終了として扱われます。>
strip_tags()
これらのエンティティをエンコードする必要があります。その場合、使用は安全strip_tags()
であるはずです。
面白い。私は個人的に受け入れ可能な部分をエンティティエンコードし、その後ストリップタグまたはhtmlentities()を実行します...
<?php
// Initial user-input
$reply = "blah blah blah >< blah blah blah";
// Allow the emoticon you mentioned
$reply = str_replace('><', '><', $reply);
// Then strip tags
$reply = strip_tags($reply);
もちろん、htmlentites($ reply)だけの場合、これはすべて意味がありません。必要に応じて、ユーザーに角かっこを入れてもらいます...