2013-04-11 85 views
2

從數據庫中獲取數據時,字符存在問題。如何從字符串中刪除不必要的字符?

doesn�t

It�s

我曾嘗試使用str_replace功能來刪除它,但它不工作。

str_replace('�','',$str); 

編碼是

<meta charset="UTF-8" /> 

如何解決這些問題呢?

+1

它必須與編碼做。 – auicsc 2013-04-11 10:58:21

+0

編碼問題.. – 2013-04-11 10:59:31

+0

什麼是數據庫字段中的編碼?什麼是你的PHP腳本的編碼? – vikingmaster 2013-04-11 11:00:55

回答

4

嘗試utf8_encode()函數。

它將刪除該字符

utf8_decode('doesn�t'); // doesnt 

這是不好的,因爲它從doesn't

OR

刪除'只需更新Meta標記

<meta charset="UTF-8" /> 

<meta charset="ISO-8859-1" /> 

輸出

doesn't

It's

+0

謝謝你..它現在工作正常... :) – Ravi 2013-04-11 11:25:06

+0

@RaviBhanvadia如果它的工作üç接受答案 – ravi404 2013-04-11 11:38:32

+0

@RaviBhanvadia很高興幫助你:D – 2013-04-11 15:41:28

3

無需刪除這些字符,請儘量使用htmlentities()utfdecode()函數來顯示那些正確

這是因爲字符編碼

2

只刪除了「」 S會給你錯誤的輸出。例如,字符串可能是doesn't,從doesn�t刪除gives會給你doesnt這是錯誤的。

你應該做的是修復你的編碼。您可能正在使用與您的代碼不同的編碼保存或檢索字符串。