一、教程内容

想要将“日常歌单”几个字变为"日 / 常 / 歌 / 单”,然而直接用explode("","日常歌单")返回false,用preg_replace("//","/ \/ /","日常歌单")也不行,分割中文会出错,因为编码不一样长。于是需要自己做相应的函数。

关键点:mb_strlen、mb_substr

1、mb_strlen:mixed mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] )

使用mb_strlen("xxxx","utf-8")会使得中文长度按1计算而不是3,例如:$str='日常a歌1单';

echo strlen($str);//14

echo mb_strlen($str,'utf8');//6

2、mb_substr:string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )

按照字符编码多字节安全地截取字符,例如:$str='日常a歌1单';

echo mb_substr($str,0,4,'utf-8');//截取头5个字,【日常a歌1】

3、思路

因此,可以先计算长度,然后一个for循环一次截取每个字符,再加入数组,最后implode(或者在截取后马上进行拼接)

二、具体操作function str2arr_utf8($str)

{

$len = mb_strlen($str, 'utf-8');

$arr = [];

for ($i=0; $i

$arr[] = mb_substr($str, $i, 1, 'utf-8');

return $arr;

}

php将中文编译成字符串,PHP将汉字字符串转换为数组相关推荐

  1. java将中文转换成拼音_java实现将汉语转换为拼音功能

    这几天在做项目的时候用到了通过拼音去数据库表里面去模糊查询汉语字段,刚开始的时候感觉特别神奇,查了好多资料,直接去模糊查询是能实现的,但是貌似很复杂.所以最终取了一个比较容易的方案,就是给数据库表里面 ...

  2. VB 汉字字符串转换成拼音

    以下这个函数可以将一个汉字字符串转换成拼音 Private Function Getpy(Txt) Dim d, TmpTxt Dim wzcode, i, TmpWZ, a, b, ii Set d ...

  3. vb 字符串转为数字 和判断字符串是否是数字字符串【转】

    1 Val 函数 返回包含于字符串内的数字,字符串中是一个适当类型的数值. 语法 Val(string) 必要的 string 参数可以是任何有效的字符串表达式. 说明 Val 函数,在它不能识别为数 ...

  4. pypinyin |将得到的中文转化成拼音形式的字符串(详细过程+代码)

    为了获得所爬数据对应的网页url,我要将输入的城市中文名转换成对应拼音形式 如:输入"重庆",我需要的到的是'chongqing' 过程描述: 1.重庆->['chong', ...

  5. JavaCompiler实战:将Java源代码字符串动态编译成java类

    .首先我们来认识一下 java中的一个对象 JavaCompiler JavaCompiler : 不知道肯定很陌生,其实这个api出来很久了,他是jdk6的特性,用来编译java的源程式的,详细介绍 ...

  6. 24.shell中list详解,定义list,获取List的总个数,获取list的某个元素值,将list的每个元素转换成以空格分隔的字符串,空格分隔的字符串转换成list,for循环list

    文章目录 前言 定义list 获取List的总个数 获取list的某个元素值 将list的每个元素转换成以空格分隔的字符串 空格分隔的字符串转换成list for循环list 总结 友情链接 前言 s ...

  7. 怎样创造计算机语言,如何创建编译成JavaScript的编程语言

    你曾经想过创建自己的编程语言吗?在本文中,我将演示如何使用免费工具和PEG.js解析器生成器快速编写编译为JavaScript的简单语言. 什么是解析器生成器 解析器生成器顾名思义就是一个基于语法.语 ...

  8. python源代码不需要编译成什么-python需要编译么

    一个经常听见的问题,那就是:Python是解释型的语言吗?它会被编译吗?这个问题没有想象中那么好回答.和很多人认识世界一样,习惯以一个简单的模型去评判一些事物.而事实上,里面包含了很多很多的细节. 通 ...

  9. php编译成二进制文件_JVM字节码文件概述

    字节码文件概述 字节码文件的跨平台性 Java语言:跨平台的语言 当Java源代码成功编译字节码后,如果想在不同的平台上面运行,则无需再次编译 这个优势目前来说已经不再吸引人,因为Python.PHP ...

  10. go编译成c语言,Go语言是怎么完成编译的

    Go语言是一门需要编译才能运行的编程语言,也就说代码在运行之前需要通过编译器生成二进制机器码,随后二进制文件才能在目标机器上运行,如果我们想要了解Go语言的实现原理,理解它的编译过程就是一个没有办法绕 ...

最新文章

  1. R语言构建xgboost模型:xgb.cv函数交叉验证确定模型的最优子树个数(可视化交叉验证对数损失函数与xgboost模型子树个数的关系)、交叉验证获取最优子树之后构建最优xgboost模型
  2. FreeNas安装、初始化和存储池设置
  3. Spring boot定制错误页面
  4. ubuntu下MySQL的安装
  5. REST架构下,浏览器怎么发送put与delete请求?
  6. Pentium 4处理器架构/微架构/流水线 (9) - NetBurst执行核详解 - 执行单元与发射口
  7. 国企营业收入逾17万亿 同比增长24.2%
  8. 谷歌拼音输入法快速切换中英文解决中英文混合打字问题
  9. svg Path 命令详解
  10. Effective java读后感
  11. 加密与解密(一) -- 壳、加壳
  12. 数据库中索引原理及填充因子
  13. 非参数统计中的核平滑方法/Kernel smoother
  14. bulk插入 es_elasticsearch的helpers.bulk和es_client.bulk的用法
  15. 小学语文哪课适合用计算机,小学语文新课心得体会
  16. 基于区域增长的可视人彩色图像分割
  17. Tencent Linux操作系统宣布开源
  18. 如何解决QQ在线客服未启用问题
  19. 123457123457#0#---------com.ppGame.SeaPuzzleGame73--前拼后广--宝宝海洋拼图pp
  20. u盘数据恢复的原理_U盘硬盘数据恢复原理 你了解多少?

热门文章

  1. Linux 2.4 NAT (网络地址转换) HOWTO(二)
  2. 「Mac新手必备」自定义 Mac 上的控制中心和菜单栏
  3. 类 ACDSee图像浏览工具Lyn for Mac
  4. 如何在装有 macOS Monterey 的 Mac 上使用省电模式?
  5. Photo Size Changer三步压缩太大的jpg照片
  6. 聊聊flink的KvStateRegistryGateway
  7. javascript的array.some()和array.every()
  8. 机器学习之amp;amp;Andrew Ng课程复习--- 聚类——Clustering
  9. 任务02——安装 Intellj IDEA,编写一个简易四则运算小程序,并将代码提交到 GitHub...
  10. IIS Express配置多站点同时运行