我有以下的,简单的代码:str_replace函数不更换正确
$text = str_replace($f,'<a href="'.$f.'" target="_blank">'.$u.'</a>',$text);
其中$ f是一个URL,如http://google.ca
,和$ u是URL的名称(我的功能将其命名为“谷歌”) 。
我的问题是,是,如果我给我的函数的字符串像
http://google.ca http://google.ca
返回
<a href="<a href="http://google.ca" target="_blank">Google</a>" target="_blank">Google</a> <a href="<a href="http://google.ca" target="_blank">Google</a>" target="_blank">Google</a>
这显然不是我想要的。我希望我的函数能够回显两个单独的可点击链接。但str_replace正在替换第一次出现(它在循环中遍历所有找到的URL),并且第一次出现已被替换。
我该如何告诉str_replace忽略那个特定的,然后转到下一个?给出的字符串是用户输入,所以我不能只给它一个静态偏移或任何与substr,我已经尝试过。
谢谢!
这并不是说'str_replace'被替换不正确的,它只是你”重新使用它。 (肛门,但是真的。):-) – 2012-02-01 20:25:45
是的,我知道。我想知道是否有其他方法可以正常工作。 – Scott 2012-02-01 20:30:02