1、在百度搜索框中输入:中困要要要要乱说乱动器在要困要要要在要无误仙客来要是要要粉黛将军肚要呆要要因要两手空空在 要手榴弹要要在顺在手榴弹要在右要要要要,最终搜索结果如下图:

2、编写函数qstrlen,代码如下:
/**
* dstrlen // kcuc
* @param string $str
* @return string $count 一个汉字表示两个长度
*/
function qstrlen($str) {
$count = 0;
$len = 0;
for ($i = 0; $i < strlen($str); $i++) {
$value = ord($str[$i]);
if($value > 127) {
$count++;
if ($value >= 192 && $value <= 223) {
$i++;
} elseif ($value >= 224 && $value <= 239) {
$i = $i + 2;
} elseif ($value >= 240 && $value <= 247) {
$i = $i + 3;
}
}
$count++;
if ($count > 76 && $len == 0) {
$len = $i;
$subject = mb_strcut($str, 0, $len, ‘utf-8’);
}
if ($count > 82) {
return [$subject, str_replace($subject, ”, mb_strcut($str, 0, $i, ‘utf-8’))];
break;
}
}
if ($count > 76 && $count <= 82) {
return [$subject, str_replace($subject, ”, mb_strcut($str, 0, null, ‘utf-8’))];
}
return $count;
}
3、代码截图如下(一个汉字表示2个长度,因此38需要乘以2,且“要两手”为3个汉字的长度,因此在函数中长度为6):

4、调用截取字符串函数,其代码及截图如下:

5、在网页模板中判断并显示提示信息:

6、最终搜索关键词如果长度超出38个汉字,显示效果如下:

7、中英文加数字混合关键词搜索效果与百度对比,搜索:中困要要要要乱说乱动器8d88847yudghdjuhfhryhw27在要困要要要ssssssssss在要无误仙客shjdjssdddd来要是要要粉黛将军肚要呆要要因,结果如下:


需要长期技术维护或远程问题排查?
我是拥有 15+ 年经验的 PHP / Go 后端工程师,长期关注已有系统维护、Bug 修复、性能优化、服务器排查、WordPress 网站维护和小功能迭代。
如果你的项目遇到以下情况,可以先从一次小问题排查开始合作:
- ✅ PHP / Laravel / Yii2 老项目无人维护
- ✅ Go / Gin 后端接口需要排查或优化
- ✅ WordPress 网站访问慢、报错或插件冲突
- ✅ Nginx / MySQL / Redis / Linux 服务器异常
- ✅ CDN / Cloudflare / DNS / HTTPS 配置问题
- ✅ 需要长期远程技术支持或兼职维护
更多介绍请查看:关于我 & 合作
微信:13980074657
邮箱:shuijingwanwq@gmail.com
Telegram:@shuijingwan
GitHub:https://github.com/shuijingwan

发表回复