php判断内容是否乱码,PHP 如何匹配文本中是否含有乱码字符

该博客探讨了如何处理ANSI编码的PHP文档,通过关闭错误提示并使用iconv函数将字符串从ANSI转换为UTF-8。同时,提供了一个函数is_utf8来检查字符串是否为有效的UTF-8编码。如果字符串成功转换,页面将输出'匹配正确',否则输出'匹配错误'。
摘要由CSDN通过智能技术生成

php<?php

/*

仅适用于php文档为ANSI编码

*/

/* 关闭页面错误提示,iconv("","UTF-8","办证证")这段代码一旦转入不是UTF-8编码就会错误 */

error_reporting(0);

$str = "办证"; //接收来的字符串

//尝试转换编码,

$str = iconv('', 'UTF-8', $str);

//匹配是否为UTF-8编码

function is_utf8($utf8str)

{

if (preg_match('/^([' . chr(228) . '-' . chr(233) . ']{1}[' . chr(128) . '-' . chr(191) . ']{1}[' . chr(128) . '-' . chr(191) . ']{1}){1}/', $utf8str) == true || preg_match('/([' . chr(228) . '-' . chr(233) . ']{1}[' . chr(128) . '-' . chr(191) . ']{1}[' . chr(128) . '-' . chr(191) . ']{1}){1}$/', $utf8str) == true || preg_match('/([' . chr(228) . '-' . chr(233) . ']{1}[' . chr(128) . '-' . chr(191) . ']{1}[' . chr(128) . '-' . chr(191) . ']{1}){2,}/', $utf8str) == true) {

return true;

} else {

return false;

}

}

if (is_utf8($str) == 1) {

//由于文件是ANSI编码,此处需用UTF8转换,页面才能正常输出

echo iconv('GB2312', 'UTF-8', '匹配正确');

} else {

//同上

echo iconv('GB2312', 'UTF-8', '匹配错误');

}

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值