2、获取中文长度:mb_strlen()

php数组里面能放中文。因为PHP是弱数据类型的编程语言,所以PHP中的数组可以存储任意多个、任意类型的数据,即数组元素的类型没有限制,可以是数字、布尔值、数组、字符串等;而字符串可分为纯英文字符串、纯中文字符串和中英混合字符串。

前端(vue)入门到精通课程:进入学习

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

数组是 PHP 中最重要的数据类型之一,在 PHP 中的应用非常广泛。因为 PHP 是弱数据类型的编程语言,所以 PHP 中的数组变量可以存储任意多个、任意类型的数据,并且可以实现其他强数据类型中的堆、栈、队列等数据结构的功能。

简单来说,PHP数组元素的类型没有限制,可以是数字、字符串、布尔值、数组、Object对象等类型。

其中字符串是一个连续的字符序列,由一系列的字符组成,其中每个字符等同于一个字节。

字符串可分为纯英文字符串、纯中文字符串和中英混合字符串。因此php数组里面能放中文。

示例1:php数组里放纯英文字符串

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array(1,2,"hello",TRUE,[3,4]);
var_dump($arr);
?>

示例2:php数组里放纯中文字符串

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array("你好","汤姆","hello",TRUE,[3,4]);
var_dump($arr);
?>

需要注意,在PHP中,一个汉字占三个字符,因此上面示例的两个中文字符串的长度为6.

示例3:php数组里放中英混合字符串

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array("你好124","23汤姆","hello",TRUE,[3,4]);
var_dump($arr);
?>

扩展知识:中文字符串的两个处理函数

1、中文截取:mb_substr()

mb_substr( $str, $start, $length, $encoding )
  • $str,需要截断的字符串

  • $start,截断开始处,起始处为0

  • $length,要截取的字数

  • $encoding,网页编码,如utf-8,GB2312,GBK

<?php
header("Content-type:text/html;charset=utf-8"); 
$str='php中文网://www.php.cn'; 
echo mb_substr($str,0,4,'utf-8');//截取头5个字,假定此代码所在php文件的编码为utf-8 
?>

2、获取中文长度:mb_strlen()

mb_strlen( $str, $encoding )
  • $str,要计算长度的字符串

  • $encoding,网页编码,如utf-8,GB2312,GBK

<?php
header("Content-type:text/html;charset=utf-8"); 
$str='php中文网://www.php.cn'; 
echo mb_strlen($str,'utf-8');//假定此代码所在php文件的编码为utf-8 
?>