PHP实现过滤掉非汉字字符只保留中文字符

yipeiwu_com5年前PHP代码库
<?php

$str = "a 1b 2b<中文>。xxyy字符";

//转换 GB2312 -> UTF-8
$str = mb_convert_encoding($str, 'UTF-8', 'GB2312');

preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches);
$str = join('', $matches[0]);

//转换 UTF-8 -> GB2312
$str = mb_convert_encoding($str, 'GB2312', 'UTF-8'); 

echo $str; //输出 中文字符

?>

相关文章

PHP调试函数和日志记录函数分享

网站程序开发过程经常需要调试,发布阶段也需要记录运行日志,方便发现问题和还原事件。这就要求有调试和日志记录功能。 下面分别写了用于调试的函数和用于记录错误的函数。 使用方法很简单,且自动...

解读PHP的Yii框架中请求与响应的处理流程

一、请求(Requests) 请求: 一个应用的请求是用 yii\web\Request 对象来表示的,该对象提供了诸如 请求参数(译者注:通常是GET参数或者POST参数)、HTTP头...

PHP 删除一个目录及目录下的所有文件的函数代码

复制代码 代码如下: /***** *@dir - Directory to destroy *@virtual[optional]- whether a virtual directo...

PHP 验证码的实现代码

checkcode.php 生成验证码图片,还有变量 $_SESSION[check_pic]。 复制代码 代码如下: <? session_start(); for($i=0;...

PHP中for与foreach的区别分析

注意: 除非数组是被引用,foreach 所操作的是指定数组的一个拷贝,而不是该数组本身。因此数组指针不会被 each() 结构改变,对返回的数组单元的修改也不会影响原数组。 1. 自p...