>  기사  >  백엔드 개발  >  PHP 문자열

PHP 문자열

不言
不言원래의
2018-04-23 16:32:011064검색

이 글에 소개된 내용은 PHP 문자열에 관한 내용으로, 이제 모든 사람과 공유합니다. 도움이 필요한 친구들은 이를 참조하여 문자 수를 알아낼 수 있습니다

//현재 페이지 인코딩을 가정합니다. GBK


<?php
$str="中国abc";
echo strlen($str); //返回7,因为 GBK编码每个中文两个字节,strlen是返回字符串所占的字节长度。
echo "<hr>";
echo iconv_strlen($str,"GBK"); //返回5.iconv_strlen 是统计字符串的字符数量
?>

//현재 페이지 인코딩이 UTF-8

<?php
$str="中国abc";
echo strlen($str); //返回9,因为 UTF-8编码每个中文三个字节,strlen是返回字符串所占的字节长度。
echo "<hr>";
echo iconv_strlen($str,"UTF-8"); //返回5.iconv_strlen 是统计字符串的字符数量
?>

iconv_strlen이라고 가정하면 인코딩에 관계없이 정확한 문자 수를 계산할 수 있습니다.

mb_strlen — 문자열 길이 가져오기
PHP에 내장된 문자열 길이 함수 strlen은 중국어 문자열을 올바르게 처리할 수 없습니다. 문자열이 차지하는 바이트 수만 가져옵니다.
GB2312 중국어 인코딩의 경우 strlen으로 얻은 값은 한자 수의 2배인 반면, UTF-8로 인코딩된 중국어의 경우 그 차이는 3배입니다(UTF-8 인코딩에서는 한자 하나가 3바이트를 차지합니다).
mb_strlen 함수를 사용하면 이 문제를 더 잘 해결할 수 있습니다.
mb_strlen은 문자 인코딩을 지정하는 두 번째 선택적 매개변수가 있다는 점을 제외하면 사용법이 strlen과 유사합니다.
예를 들어 UTF-8 문자열 $str 길이를 얻으려면 mb_strlen($str,'UTF-8')을 사용할 수 있습니다.
두 번째 매개변수를 생략하면 PHP 내부 인코딩이 사용됩니다. 내부 인코딩은 mb_internal_encoding() 함수를 통해 얻을 수 있습니다.
mb_strlen은 PHP의 핵심 기능이 아니라는 점에 유의해야 합니다. 사용하기 전에 php_mbstring.dll이 php.ini에 로드되어 있는지 확인해야 합니다. 즉, "extension=php_mbstring.dll" 줄이 있는지 확인해야 합니다. 존재하며 주석 처리되지 않았습니다. 그렇지 않으면 함수 정의 문제가 발생합니다.
mb_strlen('abcdef','utf-8') 및 mb_strlen('one two three four five six', 'utf-8')은 둘 다 6

trim
echo Trim(",1,2,3)과 같습니다. ,4 ,", ","); // 양쪽 끝의 "," 숫자가 잘린 1,2,3,4가 됩니다.

strcmp() 함수는 두 문자열을 비교합니다.
참고: strcmp() 함수는 바이너리 안전하고 대소문자를 구분합니다.
이 함수는 다음을 반환합니다:
0 - 두 문자열이 동일한 경우
9e7c0bf7a7d1bd2ff78eca2e4be6b6ab0 - string1이 string2보다 큰 경우

HTML 관련
1,htmlspecialchars($string)
This 최대 단순 사용법은 문자열의 일부 특수 문자(이름에서 알 수 있듯이) &,',"6580843315dd7804e35fd3743df832ea를 해당 HTML 엔터티 형식으로 변환합니다.
PHP:

  $str = "i love kiki, iwind said.";
    echo htmlspecialchars($str);

i love b659ec7c04308a465d140cce6731b8b9kikie6e38b3c62e8df885fe2e3986461aa63, iwind가 말했습니다.

2,htmlentities($string)
엔티티 형식으로 변환할 수 있는 모든 문자를 엔터티 형식으로 변환합니다.
3,html_entity_decode($string);
PHP4. 3.0 이후에 추가되었으며 htmlentities($string)의 반대 기능을 가집니다.
4,nl2br($string)
은 문자열의 모든 개행 문자를
+개행 문자로 변환합니다. 예:

 PHP:
    $str = "i love kiki,/n iwind said.";
    echo nl2br($str);


iwind는 kiki를 좋아합니다.

관련 권장 사항:


PHP 문자열 인코딩 문제에 대한 자세한 설명

위 내용은 PHP 문자열의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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