0

我使用 preg_replace 函数,它可以正常工作,但是当我插入数据库 (MYSQL) 时,它会以原样插入(我的 % " " name is & sourov, datta.)而不是 "My name is 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); 
?>
4

1 回答 1

2

该模式产生以下输出:

My         name is     sourov, datta.

你需要的是这样的:

$des = preg_replace('/[^a-zA-Z0-9,\.]+/', ' ', $des);

请注意+以下字符组。如果您仍然在数据库中获取原始字符串,那么您做的事情不对,但这将不再是问题。

于 2012-10-09T13:25:16.693 回答