Heim >Backend-Entwicklung >PHP-Tutorial >php-mysql查询未解码的unicode汉字,模糊查询不成功
phpsql模糊查询
我在数据库学生基本信息里面,学生姓名的字段是json包装的字符串,比如{"stu_name":"\u5f20\u4e09"},表示学生姓名是张三。我在php程序中要进行学生姓名模糊查询,当我输入"张"时,后台程序用json_encode得到张的unicode编码\u5f20,然后数据库中模糊查询条件为 like '%\u5f20%',这个时候,可以返回张三那条数据,可是当我输入"张三"两个字的时候,like '%\u5f20\u4e09%',竟然就返回不了了。后来我经过几次尝试,发现两个%%中间只要是一个汉字都查得到,多于一个就不行。另外,在汉字之间插入一个%,like '%\u5f20%\u4e09%'这样却能查询得到。我用var_dump('\u5f20\u4e09')输出显示是12个字符,汉字之间应该没有其他字符,请问是怎么回事?求高人指点。