0

我有一个由其他人编写的函数,它返回客户的地址。此功能并不像您想象的那么简单。有充分的理由编写它以便返回变量通过:

eval("\$address_out = \"$fmt\";");

第一的。尽管快速浏览了手册,但它的作用对我来说还是个谜。所以问题是像这两个例子一样返回地址(注意有 3 个重复<br/>s 和其他 4 个)

ginger rogers<br /> hollywood<br /> California<br /> <br /> <br /> United states

ginger rogers<br /> hollywood<br /> <br /> <br /> <br /> United states

我认为将重复<br/>的 s 去掉会更快,但我很困惑,因为它们的数量可能不同,并且它们由空格分隔。

有人有什么想法吗?

编辑:我应该说,我想
在地址的每一位之间保留一个,这是有多重
我想摆脱除一个之外的所有

4

1 回答 1

1

$addr = str_replace( array( '<br/>', '<br>', '<br />', "\r", "\n" ), '', $addr );将删除<br/>中断,加上换行符和回车符。

保持一个<br/>静止:

while ( strpos( $addr, '<br /> <br />' ) !== false ) { 
    // while two adjoining <br />'s still exist in the variable
    // replace two with one <br /> break
    $addr = str_replace( '<br /> <br />', '<br />', $addr );
}
于 2012-11-14T15:16:26.087 回答