php使用substr()函数截取字符串出现乱码怎么办

  • 来源:网络
  • 更新日期:2020-07-10

摘要:php使用substr()函数截取字符串出现乱码的解决方法是:使用mb_substr()函数即可,因为substr()函数只针对英文字符。具体使用方法:【mb_substr($str,0,2,"UTF8")】。(推荐教程:php

php使用substr()函数截取字符串出现乱码的解决方法是:使用mb_substr()函数即可,因为substr()函数只针对英文字符。具体使用方法:【mb_substr($str,0,2,"UTF8")】。

(推荐教程:php教程)

原因分析:

substr() 函数只针对英文字符,如果我们要分割中文字符,则需要使用 mb_substr()函数。

函数介绍:

mb_substr() 函数返回字符串的一部分。

语法:

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

参数介绍:

str 必需。从该 string 中提取子字符串

start 必需。规定在字符串的何处开始

length 可选。规定要返回的字符串长度。默认是直到字符串的结尾

encoding 可选。字符编码。如果省略,则使用内部字符编码

返回值:

返回字符串的提取部分,如果失败则返回 FALSE,或者返回一个空字符串。

代码实现:

<?php
header("Content-Type: text/html; charset=utf-8");
$str="网站工作室欢迎您!";
echo mb_strlen($str,"UTF8")."<br>";
echo mb_substr($str,0,2,"UTF8")."<br>";
?>