>  기사  >  백엔드 개발  >  PHP의 strlen()과 mb_strlen() 비교

PHP의 strlen()과 mb_strlen() 비교

不言
不言원래의
2018-04-20 12:13:201674검색

이 기사의 내용은 PHP의 strlen()과 mb_strlen()의 비교에 관한 것입니다. 이는 특정 참조 값을 가지고 있습니다. 이제 도움이 필요한 친구들이 참고할 수 있습니다.

이 기사는 블로거가 작성한 것입니다. .재인쇄하실 경우 출처를 꼭 밝혀주세요.

먼저 공식 문서에 나와 있는 내용을 살펴보겠습니다.

strlen()-문자열 길이를 가져오는 데 사용됨



int strlen( 문자열 $string$string   )

  返回给定的字符串 string 的长度。   

mb_strlen获取字符串的长度


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

  获取一个 string 的长度。

str:要检查长度的字符串

encoding:encoding )

주어진 문자열의 길이를 반환합니다. string.

mb_strlen

문자열 길이 가져오기


$encoding = mb_internal_encoding()


] )

길이를 가져옵니다.

문자열.

str:

길이를 확인할 문자열 입니다.

인코딩: 인코딩매개변수는 문자 인코딩입니다. 생략하면 내부 문자 인코딩이 사용됩니다. En 참고: Strlen() 함수는 중국어 문자열을 제대로 처리할 수 없습니다. 이는 문자열 바이트가 차지하는 바이트 수만 가져옵니다. utf-8로 인코딩하면 한자 하나가 3바이트를 차지합니다. B 하지만 mb_strlen()에서 인코딩이 UTF-8이면 한자의 출력 길이는 1입니다.

이해를 돕기 위해 아래 코드 섹션을 추가합니다.

<?php
	header("Content-type:text/html;charset=utf-8");
	
	echo "关于字符串你长度获取的测试"."<br />";
	
	$_str_y = "hello";
	$_str_c = "你好";
	
	//strlen()
	echo "strlen()输出hello的长度".strlen($_str_y)."<br />";
	echo "strlen()输出&#39;你好&#39;的长度".strlen($_str_c)."<br />";
	/**
	 * 输出:
	 * strlen()输出hello的长度5
	 * strlen()输出&#39;你好&#39;的长度6
	 */
	
	//mb_strlen()
	echo "mb_strlen( 不指定字符编码 )输出hello的长度".mb_strlen($_str_y)."<br />";
	echo "mb_strlen( 不指定字符编码 )输出&#39;你好&#39;的长度".mb_strlen($_str_c)."<br />";	
	/**
	 * mb_strlen( 不指定字符编码 )输出hello的长度5
	 * mb_strlen( 不指定字符编码 )输出&#39;你好&#39;的长度6
	 */
	
	//mb_strlen()
	echo "mb_strlen( utf-8 )输出hello的长度".mb_strlen($_str_y,&#39;utf-8&#39;)."<br />";
	echo "mb_strlen( utf-8 )输出&#39;你好&#39;的长度".mb_strlen($_str_c,&#39;utf-8&#39;)."<br />";
	
	/**
	 * 输出:
	 * mb_strlen( utf-8 )输出hello的长度5
	 * mb_strlen( utf-8 )输出&#39;你好&#39;的长度2
	 */
	
	
?>

🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜 🎜 🎜 , 사용하기 전에 php_mbstring.dll이 php.ini에 로드되었는지 확인해야 합니다. 즉, "extension=php_mbstring.dll" 줄이 존재하고 존재하지 않는지 확인해야 합니다. 주석 처리하지 않으면 정의되지 않은 함수 문제가 발생합니다. 🎜🎜🎜🎜🎜관련 추천: 🎜🎜🎜🎜🎜php🎜🎜🎜🎜🎜🎜에서 추상 클래스와 인터페이스의 차이점

위 내용은 PHP의 strlen()과 mb_strlen() 비교의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.