我使用preg_replace函数,它工作正常,但当我插入数据库(MYSQL)时,它插入不变(我的%“”名称是& sourov,datta。)而不是 “我的名字是sourov,datta。”数据库没有正确插入的原因是什么?
<?php
$des='My % name is & sourov, datta.';
$des = preg_replace('/[^a-zA-Z0-9\,\.]/', ' ', $des);
echo $des; //output will : My name is sourov, datta.
$data = array(
'title' => $des,
);
$this->db->insert('mytable', $data);
?>
答案 0 :(得分:2)
该模式产生此输出:
My name is sourov, datta.
你需要的是:
$des = preg_replace('/[^a-zA-Z0-9,\.]+/', ' ', $des);
请注意字符组后面的+
。如果你仍然在你的数据库中获得原始字符串,那么你没有做正确的事情,但这不再是问题了。