php判斷字符串包含幾個字符的方法:1、使用strlen()函數,語法“strlen($string)”;2、使用mb_strlen()函數,語法“mb_strlen($string, '字符編碼')”。
本教程操作環境:windows7系統、PHP7.1版、DELL G3電腦
php判斷字符串包含幾個字符
在php中,判斷字符串包含幾個字符,就是判斷字符串的長度。
在 PHP 中常用的計算字符串長度的函數有兩個,分別是 strlen() 和 mb_strlen() 函數。當處理全英文字符串時,這兩個函數的效果是一樣的,而處理中英文混合或純中文的字符串時,這兩個函數會有一些差異。
1、strlen() 函數
strlen() 函數可以返回給定字符串的長度,其語法格式如下:
strlen($string)
參數 $string 為需要計算長度的字符串。如果 $string 為空則返回 0。
注意:在 strlen() 函數中,數字、英文、小數點、下劃線和空格占一個字符長度;而一個 GB2312 編碼的漢字占兩個字符長度,一個 UTF-8 編碼的漢字占三個字符長度。
示例:
<?php header("Content-type:text/html;charset=utf-8"); $str2 = 'hello'; echo strlen($str2), '<br>'; //5 $str3 = '中國'; echo strlen($str3), '<br>'; //6 $str4 = ''; echo strlen($str4), '<br>'; //0 ?>
2、mb_strlen() 函數
mb_strlen() 函數同樣可以返回字符串的長度,語法格式如下:
mb_strlen($str [, $encoding = mb_internal_encoding()])
其中,$str 為需要計算長度的字符串,$encoding 是可選參數,為字符編碼,如果省略則使用內部字符編碼。
mb_strlen() 函數的返回值為具有 $encoding 編碼的字符串 $str 所包含的字符數,如果 $encoding 無效則返回 false。
注意:與 strlen() 函數不同,在 mb_strlen() 函數中,無論是漢字,還是英文、數字、小數點、下劃線和空格,都只占一個字符長度。
示例:
<?php header("Content-type:text/html;charset=gdk"); $str1 = 'hello'; echo mb_strlen($str1), '<br>'; //5 $str2 = '你好中國'; echo mb_strlen($str2, 'utf-8'), '<br>'; //4 $str3 = '你好中國'; echo strlen($str3), '<br>'; //12 ?>
推薦學習:《PHP視頻教程》