何らかの理由で。str_replace()では機能しません/。作成しているブログCMSの入力フォームとテキストエリアフォームで独自のリンクスタイルを受け入れる関数を作成しています。たとえば、を通過[{http://brannondorsey.com}My Website]するとに変換されます。これが私のコードです:<a href='http://brannondorsey.com'>My Website</a>make_link($string);
function make_link($input){
$double = str_replace( '"', '"', $input);
$single = str_replace("'", "'", $double);
$bracket_erase = str_replace('[', "", $single);
$link_open = str_replace('{', '<a href="', $bracket_erase);
$link_close = str_replace("}", ">", $link_open);
$link_value = str_replace(']', "</a>", $link_close);
echo $link_value;
}
]に置き換えられないことを除いて、すべてが正しく機能し</a>ます。スラッシュを削除すると、正常に置き換え]られ<a>ますが、ご存知のとおり、アンカータグは適切に閉じられないため{、Webページの次の閉じるアンカータグとの間のすべてのhtmlコンテンツがリンクになります。