>백엔드 개발 >PHP 튜토리얼 >PHP에서 자주 사용되는 문자열 함수

PHP에서 자주 사용되는 문자열 함수

墨辰丷
墨辰丷원래의
2018-05-15 14:08:512505검색

이 글은 주로 PHP에서 사용되는 문자열 함수를 소개합니다. 관심 있는 친구들이 참고하면 좋을 것 같습니다.

목차 읽기

  • 문자열 길이 결정

  • 문자열 비교

  • 분할 조인 역방향

  • html과 문자열 간 변환

  • 문자열 채우기 및 제거

  • 문자 및 단어 수 계산

  • 찾기, 바꾸기 및 가로채기

  • 대소문자 처리

php에는 98개의 문자열 함수가 내장되어 있습니다(정규식 기반 함수 제외, 정규식은 논의되지 않음) 여기 범위)는 문자열에서 발생할 수 있는 모든 측면을 처리할 수 있습니다. 이 문서에서는 주로 다음 8가지 부분을 포함하여 일반적으로 사용되는 문자열 함수를 간단하게 요약합니다. 1. 문자열 길이 결정 2. 문자열 비교 3. 분할 연결 반전, 4. html과 문자열 간의 변환, 5. 문자열 채우기 및 제거, 6. 문자 및 단어 수 계산, 7. 검색, 바꾸기 및 가로채기, 8. 대소문자 처리.

디렉토리로 돌아가기

문자열 길이 결정

strlen 함수와 mb_strlen 함수, 후자는 mbstring 확장을 활성화해야 합니다

<?php 
    header(&#39;content-type:text/html;charset=utf-8&#39;);
    $str = &#39;abcdef&#39;;    echo strlen($str); // 6
    echo "<br/>";
    $str = ' ab cd ';    echo mb_strlen($str); // 7
    echo "<br/>";    //strlen 是计算字符串"字节"长度 
    //mb_strlen,是根据编码,计算字符串的"字符"个数. 

    $str='中华人民共和国';    echo "字节长度是".strlen($str);//在 UTF-8编码下,一个汉字占3个字节 在gbk中一个汉字占2个字节
    echo "<br/>";    echo "字符长度是".mb_strlen($str,'utf-8'); ?>

디렉토리로 돌아가기

문자열 비교

strcmp 함수, strcasecmp 함수, strspn 함수, strcspn function

<?php 
    $pwd="userpwd";
    $pwd2="Userpwd";    //区分大小写
    if (strcmp($pwd, $pwd2) !=0) {        echo "password do not match";
    } else{        echo "password match";
    }

    $email1="www.baidu.com";
    $email2="WWW.BAIDU.COM";    //不区分大小写
    if (!strcasecmp($email1, $email2)) {        echo "ok",&#39;<br>';
    }    //求两个字符串相同的部分
    $password="1233345";    if (strspn($password,"1234567890")==strlen($password)) {        echo "the password connot consist solely of numbers";
    }    //
    $password="a12345";    if (strcspn($password, "1234567890")==0) {        echo "the password connot consist solely of numbers";
    }    
 ?>

디렉토리로 돌아가기

분할 연결 반전

str_split 함수, 분할 함수, 분해 함수 및 파열 함수

<?php header(&#39;content-type:text/html;charset=utf-8&#39;);
    $str = "Hello Friend";

    $arr1 = str_split($str);
    print_r($arr1);

    $arr2 = str_split($str, 3);
    print_r($arr2);

    $str = &#39;abc,中国,美国,日本&#39;; 
    // explode,是根据指定的分割符,把字符串拆成数组. 
    $arr = explode(&#39;,&#39;,$str); 
    print_r($arr); 
    // implode,是根据指定的连接符,把数组再拼接成字符串 
    $arr = explode(&#39;,&#39;,$str); 
    echo implode(&#39;~&#39;,$arr),&#39;<br />'; 
    // 你可以只传一个数组做参数,不指定连接符, 
    // 这样,将把数组单元直接拼接起来 
    echo implode($arr); ?>

디렉토리로 돌아가기

html을 문자열로 변환

htmlspecialchars 함수, Strip_tags 함수, get_html_translation_table 함수 및 addcslashes 함수 및 htmlentities 함수

<?php 

    $str = "hello &#39;, world"; 
    echo $str,&#39;<br />';    echo $str= addslashes($str),'<br />';    echo stripslashes($str),'<br />';
    $str = '<ab>'; 
    echo $str,'<br />'; 
    echo htmlspecialchars($str); 
    echo "</br>";
    $str="Email <a href=&#39;admin@qq.com&#39;>example@qq.com</a>";    echo strip_tags($str); ?>

디렉토리로 돌아가기

문자열 채우기 및 제거

trim 함수, ltrim 함수, rtrim 함수, str_pad 함수, Chunk_split 함수

<?php 
    $str = &#39;12345678&#39;; 
    echo chunk_split($str,3,&#39;,&#39;);    echo "<br>";
    $text   = "\t\tThese are a few words :) ...  ";    echo trim($text);    echo "<br>";    echo ltrim($text,'\t'),'<br>';    echo rtrim($text,'\r'),'<br>';    echo str_pad('apple', 6)."is good."; ?>

디렉토리로 돌아가기

문자 및 단어 수 계산

count_chars 함수 및 str_word_count

<?php 
    $data = "Two Ts and one F.";    foreach (count_chars($data, 1) as $i => $val) {       echo "There were $val instance(s) of \"" , chr($i) , "\" in the string.\n";
    }    echo "<hr>";
    $str = "Hello fri3nd, you're looking good today!";

    print_r(str_word_count($str, 1)); ?>

목차로 돌아가기

查找替换截取

strpos函数、str_replace函数、substr_replace函数、substr函数、strstr函数

<?php 
    $substr = "index.html";
    $log = <<< logfile    192.168.1.11:/www/htdocs/index.html:[2016/08/10:21:58:27]    192.168.1.11:/www/htdocs/index.html:[2016/08/18:01:51:37]    192.168.1.11:/www/htdocs/index.html:[2016/08/20:11:48:27]
logfile;

    $pos =strpos($log, $substr);
    $pos2=strpos($log,"\n",$pos);
    $pos=$pos+strlen($substr)+1;
    $timestamp=substr($log,$pos,$pos2-$pos);
    echo "The file $substr was first accessed on:$timestamp";
    echo "<br>";
    $author="lester@example.com";
    $author=str_replace("@", "at", $author);
    echo "connect the author of this article at $author";
    echo "<br>";
    echo ltrim(strstr($author,"@"), "@");

 ?>

回到目录

大小写处理

strtolower函数、strtoupper函数、ucfirst函数、ucwords函数

<?php 
    $url="http://WWWW.BAIDU.COM";    echo strtolower($url),'<br>';
    $str="hello world";    echo strtoupper($str),'<br>';
    $str="php is the most popular language ";    echo ucfirst($str),'<br>';    echo ucwords($str); ?>

相关推荐:

PHP 一些常用字符串函数

php 字符串函数总结

PHP字符串转数组和数组转字符串函数讲解

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

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