【发布时间】:2012-07-03 10:03:55
【问题描述】:
由于某种原因,当我将 preg_replace() 用于存储电话号码的输入字段时,我无法将其存储到 MySQL 中。 preg_replace 可以用于整数还是只能用于字符串?
我正在尝试使无法在文本字段中输入字母..有人可以提供一些见解吗?
$tel = $_POST['tel'];
//当我使用preg_replace时,它不会将值存储在MySQL中
$tel = preg_replace($reg_num,'', $tel);
...
$st->bindParam(6, $tel, PDO::PARAM_INT);
【问题讨论】:
-
请尝试 $tel = str_replace($reg_num,'', $tel);
-
显示你的
$reg_numvar -
REGEX 模式仅写入并作用于字符串,即使任一部分包含数字。
$reg_num的值是多少? -
您将匹配的替换为空字符串
''。你确定$tel在preg_replace()之后不是空的吗?在将echo $tel;插入数据库之前,您是否尝试过? -
@Utkanos $reg_num 是 $reg_num = "/[^[:num:]]/";