2012-06-23 29 views
-1
<?php 
$str='<p style="text-align: center;"> 
<img style="width: 448px; height: 321px;" src="http://admin.vn/images/images/car_1.jpg" alt=""> 
</p>'; 
$search='"'; 
$replace='''; 
$string= str_replace($search,$replace,$str); 
echo $string; 
?> 

當我回聲$字符串是導致NO轉化’爲」,如何解決它錯誤使用str_replace函數()時,從轉換「爲‘

+0

其中在代碼中定義了'$ str'? –

+1

上面的代碼在語法上不正確。將'$ replace'上的引號反轉爲'$ replace =''「;' –

+0

帶有基本顏色編碼的任何代碼編輯器(所有程序員都應該擁有這些代碼編輯器)會很清楚地表明您有引用問題。即使這個問題也告訴你,這意味着你甚至沒有注意預覽。 –

回答

1

已存儲在$ TR文本中沒有$海峽。

<?php 
$tr='<p style="text-align: center;"> 
<img style="width: 448px; height: 321px;" src="http://admin.vn/images/images/car_1.jpg" alt=""> 
</p>'; 
$search='"'; 
$replace="'"; 
$string= str_replace($search,$replace,$tr); // Changed to $tr 
echo $string; 
?> 

,並確保逃避'$replace=''';(或使用「」)

+0

這應該工作。 –

3

在你的原代碼,你傳遞一個未定義的變量($str)到str_replace功能
我相信你的意圖是要將$tr變量傳遞給str_replace函數。

而且,在你的$replace變量,我把它改成了角色之間有雙引號(「)。

<?php 
$tr='<p style="text-align: center;"> 
<img style="width: 448px; height: 321px;" src="http://admin.vn/images/images/car_1.jpg"  alt=""> 
</p>'; 
$search= '"'; 
$replace= "'"; 
$string = str_replace($search,$replace,$tr); 
echo $string; 
?> 

更改$str$tr作爲$str沒有定義。這也將有助於如果您 更改$replace有雙引號

$replace= "'"; 
+0

即使這個答案只是部分正確 - 它不應該被低估,+1 – zerkms

+0

謝謝@zerkms。我改變了我沒有完全解決原始代碼中的錯誤,所以我改變了我的答案以解決未定義的變量'$ str' –

0

$replace=''';不正確。你需要躲避秒ond '

二者必選其一

$replace = "'"使單引號不會干擾,或 $replace = '\''其逃脫中間單引號。

0

轉義報價。

$replace='\''; 
// or 
$replace="'";