2011-09-24 29 views
7

Tôi muốn xóa tất cả các lần xuất hiện của chuỗi này từ file html của tôi:str_replace không làm việc

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

tôi đã cố gắng str_replace, nghĩ rằng sẽ là một giải pháp đơn giản, nhưng nó không hoạt động:

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

Mọi đề xuất?

CẬP NHẬT: Bí ẩn được giải quyết! Cảm ơn tất cả mọi người đã cho tôi biết rằng công việc này nên hoạt động. Hóa ra vấn đề không liên quan gì đến str_replace! Tôi đã nắm lấy chuỗi html từ firebug, không nhận ra rằng firebug chèn không gian để "prettify" html. Đó là lý do tại sao str_replace không tìm được mẫu chính xác này. Tôi lý tưởng muốn xóa câu hỏi này, vì sự cố không có liên quan gì đến str_replace. Điều đó có thể không?

+1

Nó hoạt động (xem [ở đây] (http://ideone.com/tayIU)). Bạn có thể vui lòng đăng [SSCCE] (http://pscode.org/sscce.html) không? – Howard

+0

Tôi cho rằng HTML này sau đó được ghi lại vào tệp gốc? –

+0

@Doug: Có, tôi đang viết HTML trở lại tệp gốc. – moondog

Trả lời

13

str_replace() trả về phiên bản mới - bạn cần phải gán nó trở lại vào biến (hoặc một biến mới):

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

Xin lỗi, tôi nên rõ ràng hơn. Vâng, đó là những gì tôi đã thử. Bây giờ tôi sẽ làm rõ bài gốc. – moondog

-2

bạn không thể thay thế các thẻ html sử dụng str_replace. Nó chỉ thay thế các lần xuất hiện chính xác mà thôi. Nếu bạn muốn thay thế văn bản span "strip_tags" để xóa tất cả các thẻ và thay đổi văn bản span bằng str_replace.

+0

Có gì không chính xác về thẻ HTML? –

4

Nó sẽ hoạt động theo cách đó. Có lẽ bạn đã quên gán kết quả lại cho biến của bạn?

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

vấn đề của tôi là tôi đã sử dụng de str_replace để thay thế ký tự đặc biệt như (A, E, I, O, U) và nó đã không làm việc. tôi đã thử sử dụng notepad ++ một thay đổi tập tin enconding để utf8-mà không có BOM, tải lên các tập tin vào máy chủ và nó đã làm việc!