使用str_replace()从'转换'时出错

时间:2012-06-23 02:54:30

标签: php

<?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;
?>

当我回显$ string时,结果没有从“转换为”,如何修复它

4 个答案:

答案 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= "'";

答案 1 :(得分:1)

您将文本存储在$ tr而不是$ str中。

<?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=''';(或使用“”)

答案 2 :(得分:0)

$replace=''';不正确。您需要转义第二个'

使用

$replace = "'"以便单引号不会干扰,或 $replace = '\''逃脱了中间的单引号。

答案 3 :(得分:0)

逃避报价。

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