2013-05-25 97 views
-2

我收到一個奇怪的問題。我的變量$匹配,其中包含帶單引號的字符串'http://site.com'。我想刪除單引號,並使其到http://site.com。我嘗試下面的代碼,但它不刪除單引號。PHP:單引號str_replace不能在MAMP中工作

$FileName = str_replace("'", "", $match); 
    echo $FileName; 

注意:我正在使用Mamp。同樣在我的cPanel中工作正常。

實際上'http://site.com'是從preg_match得到的......我應該將其轉換爲字符串還是其他?我嘗試過(字符串),仍然沒有工作。

+1

您的代碼有效:http://codepad.org/sMGDL31g 確定您使用正確的'而不是'而不是'? – bpoiss

+1

-1您可以確定'str_replace'沒有任何錯誤。請調試您的代碼。 ;) – Leri

+1

我說它在cpanel中工作..但不是在MAMP中......在做之前先讀取問題-1 – Vishnu

回答

0

你的代碼是完美的。它給正確的輸出: -

$match="'http://site.com'"; 
$FileName = str_replace("'", "", $match); 
echo $FileName; 

輸出: -

http://site.com 

沒有str_replace函數: -

'http://site.com' 

編輯:

試試這個: -

$FileName = str_replace('\'', '', $match); 
+0

nope不工作在MAMP – Vishnu

+0

@Vishnu查看更新的答案。 –

+0

沒有兄弟,沒有工作..實際上'http://site.com'是從preg_match得到的......我應該將其轉換爲字符串或其他? – Vishnu

0

你可以轉換字符串爲十六進制這樣

$str= htmlentities($original_str, ENT_QUOTES); // it will convert both the single quotes and double quotes 
now you can replace the hex with something like 
str_replace($str,"",$original_str); 

嘗試,如果它的工作原理。

+0

我的意思是大多數人會建議它..我相信 – argentum47

+0

這是什麼? – Vishnu

+0

@VishnuVishwa什麼是什麼? – argentum47