【发布时间】:2011-07-16 05:19:33
【问题描述】:
我有一个带有问号 ('?') 的字符串,我想用可解析的内容替换它。
但是 str_replace 不会替换任何 ?我的字符串中的字符...
$str = str_replace('?', 'replacement', $str);
有什么想法吗?
【问题讨论】:
标签: php preg-replace str-replace
我有一个带有问号 ('?') 的字符串,我想用可解析的内容替换它。
但是 str_replace 不会替换任何 ?我的字符串中的字符...
$str = str_replace('?', 'replacement', $str);
有什么想法吗?
【问题讨论】:
标签: php preg-replace str-replace
该代码确实用替换词替换了问号,这意味着这不是您正在使用的代码,或者您的字符串中的内容不是问号。
PHP 的字符串函数只能在 latin1 (iso-8859-1) 编码的字符串上正确运行。在许多编码中,可能有许多代码点对应于一个字形,在视觉上看起来像一个问号,但与 ASCII 不同?。
$str = "Hello? Anyone home?";
$str = str_replace('?', 'replacement', $str);
echo $str;
输出:
Helloreplacement 任何人的家庭替换
【讨论】:
这会将? 替换为space。这可能会对您有所帮助。
<?php
$str = "this ? does ? indeed ? work";
$char='';
$str1 = str_replace('?',$char,$str);
echo $str1;
?>
【讨论】: