【PHP】随机产生中文字符的方法

发布时间:2026/6/30 6:51:29
【PHP】随机产生中文字符的方法 这段代码用来快速生成字符进行占位填充。我原本是想本地部署 blog 测试时快速生成文章的。/** * 生成指定数量的随机中文字符 * * param int $num 需要生成的中文字符数量 * return string 返回生成的随机中文字符串 */functiongetRandomZhChar(int$num):string{if($num0){return;}$result;// 常用汉字 Unicode 范围: 0x4E00 - 0x9FA5$start0x4E00;$end0x9FA5;for($i0;$i$num;$i){// 使用 random_int 生成范围内的随机 Unicode 码位// random_int 比 rand/mt_rand 更安全且分布更均匀$coderandom_int($start,$end);// 使用 mb_chr 将 Unicode 码位转换为 UTF-8 字符// mb_chr 是 PHP 7.2 引入的函数专门处理多字节字符$charmb_chr($code,UTF-8);// 防止因极少数无效码位导致生成失败虽然 4E00-9FA5 基本都有效if($char!false){$result.$char;}}return$result;}// --- 测试示例 ---header(Content-type: text/html; charsetutf-8);echo生成 1 个随机汉字: .getRandomZhChar(1).br;echo生成 5 个随机汉字: .getRandomZhChar(5).br;echo生成 10 个随机汉字: .getRandomZhChar(10).br;