php在处理中文字符检测的问题
2025年6月7日小于 1 分钟
php在处理中文字符检测的问题
mb_系列函数默认使用内部编码,如果不指定,可能会得到意想不到的结果
指定方式
mb_internal_encoding("UTF-8");
问题
下面的代码因为没有指定编码,所以会得到错误的结果
<?php
$regionName = "山东";
$areaName = "山东省";
if (mb_strpos($areaName,$regionName) !== false) {
echo "包含";
} else {
echo "不包含";
}
解决方案
<?php
mb_internal_encoding("UTF-8");
$regionName = "山东";
$areaName = "山东省";
if (mb_strpos($areaName,$regionName) !== false) {
echo "包含";
} else {
echo "不包含";
}