str_replace无法正常工作

时间:2011-09-24 06:41:18

标签: php

我想从我的html文件中删除所有出现的子字符串:

<span style="font-size: 12pt;">BLANK PAGE</span>

我尝试过str_replace,认为这是一个简单的解决方案,但它不起作用:

$html = str_replace('<span style="font-size: 12pt;">BLANK PAGE</span>', '', $html);

有什么建议吗?

更新:神秘解决了!感谢大家让我知道这个应该工作。原来问题与str_replace无关!我从firebug中抓取了html字符串,没有意识到firebug插入空格来“美化”html。这就是str_replace未能找到这种确切模式的原因。 理想情况下我想删除这个问题,因为问题最终与str_replace无关。这可能吗?

4 个答案:

答案 0 :(得分:15)

str_replace()返回新版本 - 您需要将其分配回变量(或新变量):

$myhtml = str_replace('<span style="font-size: 12pt;">BLANK PAGE</span>', '', $myhtml);

答案 1 :(得分:4)

它应该这样工作。您是否忘记将结果分配回变量?

$myhtml = str_replace('<span style="font-size: 12pt;">BLANK PAGE</span>', '', $myhtml);

答案 2 :(得分:0)

我的问题是我使用de str_replace来替换像(á,é,í,ó,ú)这样的特殊字符并且它不起作用。我尝试使用notepad ++一个更改文件enconding到utf8-没有BOM,上传文件到服务器,它工作!

答案 3 :(得分:-2)

你无法使用str_replace替换html标签。它仅取代确切的出现。如果要替换范围文本“strip_tags”以删除所有标记并使用str_replace更改范围文本。