1

このコードを変更する必要があります:

$output = preg_replace("#&lt;a ([^&gt;]*)&gt;([^&lt;]*)&lt;\/a&gt;#", "<a href=\"$1\">$2</a>", $output)

から&lt;a some.url&gt;description&lt;/a&gt;HTML コード<a href="some.url">description</a>に変更する必要がありますが、変更< and >した後、&lt; and &gt;必要なものが作成されません。

ご協力ありがとうございました。

編集:

少し単純化された HTML タグを有効にするためにこれが必要なので、私は使用しませんhtml_entity_decode()が、ほとんどの HTML は無効にしていたでしょう。

関数の入力は、フォームから取得した変数です。

まず、コードはすべて<and>&lt;andに置き換えます&gt;

<b>や など、テキストを変更する静的 HTML タグの一部を元に戻します</b>

しかし、最終的には、入力されたすべてのリンクを変更したい<a some.url>link</a>(およびコードによって変更されたよりも) によって、標準の HTML コード&lt;a some.url&gt;link&lt;/a&gt;に変更されます。preg_replace()<a href="some.url">link</a>

4

1 に答える 1

2

http://php.net/manual/en/function.html-entity-decode.php

$str = "this 'quote' is &lt;b&gt;bold&lt;/b&gt;"
html_entity_decode($output)
// output This 'quote' is <b>bold</b>

http://php.net/manual/en/function.htmlentities.php

$str = "This 'quote' is <b>bold</b>";
htmlentities($output);
// output this 'quote' is &lt;b&gt;bold&lt;/b&gt;
于 2013-04-25T07:38:02.177 に答える