我正在尝试用另一个引号({1: [1, 2, 3, 4], 2: [1, 2, 3, 4]}
{1: [1, 1], 2: [2, 2], 3: [3, 3], 4: [4, 4]}
)替换单引号('
),但我似乎无法正常工作。
另外,如何在多个字符串’
上进行此工作?
输入:不要
输出:不要
我正在尝试这个:
($text, $title, $notice)
这些都不起作用。
答案 0 :(得分:5)
当您使用阵列作为替换时,请提供与针一样多的替换。否则使用简单的字符串。
<?php
$text = 'Peter\'s cat\'s name is "Tom".';
$text = str_replace(array("'",'"'), '’', $text);
echo $text;
$text = 'Peter\'s cat\'s name is "Tom".';
$text = str_replace(array("'",'"'), array('’', '`'), $text);
echo $text;
?>
要对您可以执行的多个变量执行该任务
<?php
$text = 'Peter\'s cat\'s name is "Tom".';
$title = 'Peter\'s cat\'s name is "Tom".';
$notice = 'Peter\'s cat\'s name is "Tom".';
foreach([&$text, &$title, &$notice] as &$item)
$item = str_replace(array("'",'"'), '’', $item);
echo "text: $text<br>title: $title<br>notice: $notice";
?>
答案 1 :(得分:1)
我尝试使用preg_replace()
并且第一次完美运行:
$text = "Someone told me about a 'bacon and cheese sandwich'";
$text = preg_replace("#\'#", '’', $text);
echo $text;
输出
Someone told me about a ’bacon and cheese sandwich’
放手一搏。