Home > Article > Backend Development > 为什么PHP输出多出了特殊字符?
我的本意是只输出y,但是不知道为什么前面总会多出了个[] 如图所示 。
//校验用户名 $userName = $_POST['username']; if(!preg_match('/^[0-9a-zA-Z]{3,16}$/', $userName)){ die(); } //判断用户是否已经存在 require('./../inc/pdo_conn.php'); $hPdoPre = $hPdo->prepare("SELECT user_name FROM user WHERE user_name=:username"); $hPdoPre->bindParam(':username', $userName, PDO::PARAM_STR); $hPdoPre->execute(); $result = $hPdoPre->fetchAll(); //如果为空则可以注册 if(empty($result)){ echo 'y'; }else{ echo 'n'; }
把 require('./../inc/pdo_conn.php'); 去掉就正常
显然问题出在 pdo_conn.php 里面
require('./../inc/pdo_conn.php');
看看这个文件,输出什么?
检查下pdo_conn.php文件是不是包含了BOM
BOM 字数补丁
把 require('./../inc/pdo_conn.php'); 去掉就正常
显然问题出在 pdo_conn.php 里面
require('./../inc/pdo_conn.php');
看看这个文件,输出什么?
不要用记事本写程序,用editplus另存为一下去掉BOM
检查下pdo_conn.php文件是不是包含了BOM
BOM 字数补丁
不要用记事本写程序,用editplus另存为一下去掉BOM