我的问题在下面的 if 语句中。我的标签结构是这样的:tag1, tag2, tag3
我实现了每篇文章的每个标签的自动链接,但是如果标签的数量超过1,我需要替换两个字符,即1个逗号+1个空格字符,并在相关<p></p>
对内。这 2 个字符 {1 comma+1 space} 在最后一个</p>
标签之前。我的意思是:
我的输入是(html源):
<p>Etiketler: <a href="http://localhost/türkçe/etiketler/tag1">tag1</a>, <a href="http://localhost/türkçe/etiketler/tag2">tag2</a>, </p>
我想要的输出是(html源)
<p>Etiketler: <a href="http://localhost/türkçe/etiketler/tag1">tag1</a>, <a href="http://localhost/türkçe/etiketler/tag2">tag2</a></p>
我的自定义函数如下>现在,你看到了,preg_replace
但我也试过了str_replace
。我的编码是utf-8
如果它有帮助。我阅读了这两个函数的 php.net 手册,但我无法摆脱这两个字符。
你能帮我吗?
function etiketleri_link_yap ($article_tags)
{
$array_of_tags = explode(", ", $article_tags);
if (count($array_of_tags) >= 2)
{
$ely ='';
for ($i = 0; $i < count($array_of_tags); $i++)
{
$ely .= '<a href="'.sitenin_koku.'türkçe/etiketler/'.$array_of_tags[$i].'">'.$array_of_tags[$i].'</a>, ';
}
$arabunu ="/<\/a>, <\/p>/"; $degistir = '</a></p>';
$ely = preg_replace($arabunu, $degistir, $ely);
return $ely;
}
else
{
$ely ='<a href="'.sitenin_koku.'türkçe/etiketler/'.$array_of_tags[0].'">'.$array_of_tags[0].'</a>';
return $ely;
}
}