1

$ reply = "blah blah blah> <blah blah blah"; (> <は韓国で人気のある絵文字です)

しかし、「strip_tags」を使用して$ reply内のすべてのhtmlおよびphpタグを削除すると、「<」の後のすべての文字が削除されます。

私はstrip_tagsが混同されていると思います。

この問題を解決するための解決策はありますか?

4

2 に答える 2

1

文字列を呼び出す場合は、文字列をHTMLとして扱っていますstrip_tags()。したがって、これらのエンティティは、使用する前にエンコードする必要が&lt;あります。そうしないと、HTMLタグの開始と終了として扱われます。&gt;strip_tags()

これらのエンティティをエンコードする必要があります。その場合、使用は安全strip_tags()であるはずです。

于 2011-12-16T02:21:43.447 に答える
1

面白い。私は個人的に受け入れ可能な部分をエンティティエンコードし、その後ストリップタグまたはhtmlentities()を実行します...

<?php
// Initial user-input
$reply = "blah blah blah >< blah blah blah";

// Allow the emoticon you mentioned
$reply = str_replace('><', '&gt;&lt;', $reply);

// Then strip tags
$reply = strip_tags($reply);

もちろん、htmlentites($ reply)だけの場合、これはすべて意味がありません。必要に応じて、ユーザーに角かっこを入れてもらいます...

于 2011-12-16T02:24:04.557 に答える