我在问题表单中有一个以下的textarea
字段,用户可以在其中发布他们的问题:
<tr>
<th><label><?php echo $this->lang->line('question'); ?>: </label></th>
<td><textarea value="" id="ques_desc" name="ques_desc"
class="validate[required] text-input" > </textarea> </td>
</tr>
问题在于用户从Word或Excel复制粘贴问题时,符号'
会变成’
并以相同格式存储在数据库中。
示例:
Check men's and women's rest rooms
变成
Check men’s and women’s rest rooms
当用户在搜索框中搜索“检查男性”时,搜索结果中没有出现“检查男性”。
我尝试了使用 str_replace 函数处理 ’
和 '
,但它并没有起作用。
例如:
$ques_desc = str_replace("’","'",$ques_desc);
不替换’
到'
。
如何用'
替换每个’
?
编辑:
当我在查看页面上执行此操作时:
<?php
$ques_desc1 = "Check men’s and women’s rest rooms ";
$ques_desc = str_replace("’","'",$ques_desc1);
echo $ques_desc;
?>
它显示:
Check men's and women's rest rooms
它成功了!
当我在控制器上执行此操作时:
$ques_desc1 = $this->input->post('ques_desc');
$ques_desc = str_replace(" ",".",$ques_desc1);
它显示:
将“Take O’pening Stock Count”更改为“Take.O’pening.Stock.Count”
它也起作用了!
但是当我这样做时:
$ques_desc1 = $this->input->post('ques_desc');
$ques_desc = str_replace("’","'",$ques_desc1);
它不起作用,什么也没有改变。