strspn() 函數是 PHP 的內置函數。此函數用於查找放置在另一個字符串中的字符串的初始段的長度。簡單來說 - strspn() 函數幫助我們找到“另一個字符串中有多少個字符?”它返回在僅包含來自 $charsearch 參數的字符的字符串中找到的字符總數。
它是區分大小寫的函數,它以不同的方式處理大寫和小寫字符。
用法
strspn() 的語法如下,由四個參數組成。
strspn( $string, $charsearch, $start_from, $length)
參數
strspn() 函數包含四個參數,如上述語法所示。其中,兩個參數是強製性的,而其餘兩個參數是可選的。所有這些參數的詳細信息如下:
$string (mandatory):它是一個強製性的字符串參數,我們可以在其中找到搜索字符串。此參數指定要搜索的字符串。
$charsearch(強製):它也是一個強製參數,它指定要在給定的 $string 參數中搜索的字符列表。
$start(可選):此參數是可選的,它指定我們要從 $string 參數中開始搜索的位置。此參數保存一個整數值。
- 如果給出了 $start 並且它是一個非負值,那麽搜索將從 $start 參數中給出的那個位置開始。
- 如果給定 $start 並包含負值,則 strspn() 函數將從 $string 中該位置的末尾開始搜索 $charsearch。
$length(可選):該參數是一個可選參數,它定義了在$string 中要搜索的字符數。如果沒有給出 $length 參數,默認情況下它會檢查整個 $string。
- 如果給定 $length 參數並具有正值,則 $charsearch 將在 $string 中從開頭到 $length 值進行搜索。
- 如果給出了 $length 參數並且有一個負值,那麽 $charsearch 將從起始位置到 $string 末尾的 $length 字符進行搜索。
返回值
strspn() 函數返回最初在 $string 中找到的字符總數,它包含在 $charsearch 參數中。
如果 $string 中不存在 $charsearch 的任何字符,則返回 0。
注意:PHP 4.3及以上版本支持length和start參數。
例子
下麵給出了一些示例,可以幫助您更輕鬆、更快速地了解 strspn() 函數的工作原理。
Input $string = ABCDEFGHIJKL, $charsearch = ABCDGHI Output = 4 Input $string = ABCDEFGHIJKL, $charsearch = abc //case-sensitive Output = 0 Input $string = ABCDEFGHIJKL, $charsearch = ABCDE, start = 2 Output = 3
例子1
這是 strspn() 函數的基本且非常簡單的示例。
<?php
echo strspn( "Hie! Welcome to javaTpoint", "Hie!" );
?>
輸出:
4
例子2
<?php
$main_str1 = "Good Morning!";
$search_str1 = "MornGbs!";
$match_char1 =strspn( $main_str1, $search_str1);
echo "Number of characters matched = " . $match_char1;
?>
輸出:
在這個例子中,我們沒有提供 start 和 length 參數,所以它從字符串的開頭到結尾開始搜索。發現有3個字符與主字符串匹配。
Number of characters matched = 3
例子3
<?php
$main_str1 = "Good Morning!";
$search_str1 = "Morning! Good";
$match_char1 =strspn( $main_str1, $search_str1);
echo "Number of characters matched = " . $match_char1;
?>
輸出:
在這個例子中,整個 $search_str1 字符串在主字符串中找到,所以它返回了 13 個匹配的字符。此函數查找“早安!”與《早安!好》相似。
Number of characters matched = 13
範例4:區分大小寫
<?php
$main_str1 = "Good Morning!";
$search_str1 = "GOOD MORNING!";
$match_char1 =strspn( $main_str1, $search_str1);
echo "Number of characters matched = " . $match_char1;
?>
輸出:
此函數已返回 1,因為它處理了“早安!”和“早上好!”除了 G 不同。隻有兩個字符串的第一個字母相互匹配。證明下麵的函數是區分大小寫的。
Number of character matches = 1
例 5
<?php
$main_str1 = "abcdefghij";
$search_str1 = "AB";
$match_char1 =strspn( $main_str1, $search_str1);
echo "Number of characters matched = " . $match_char1;
?>
輸出:
在本例中,strspn() 函數返回 0,因為 AB 與主字符串不匹配。
Number of characters matched = 0
相關用法
- PHP String strstr()用法及代碼示例
- PHP String strtr()用法及代碼示例
- PHP String strtolower()用法及代碼示例
- PHP String strtoupper()用法及代碼示例
- PHP String strtok()用法及代碼示例
- PHP String str_replace()用法及代碼示例
- PHP String strrpos()用法及代碼示例
- PHP String sprintf()用法及代碼示例
- PHP String substr()用法及代碼示例
- PHP String substr_count()用法及代碼示例
- PHP String substr_replace()用法及代碼示例
- PHP String sscanf()用法及代碼示例
- PHP String substr_compare()用法及代碼示例
- PHP String wordwrap()用法及代碼示例
- PHP String ucwords()用法及代碼示例
- PHP String localeconv()用法及代碼示例
- PHP String quoted_printable_encode()用法及代碼示例
- PHP String ucfirst()用法及代碼示例
- PHP String nl2br()用法及代碼示例
- PHP String vsprintf()用法及代碼示例
注:本文由純淨天空篩選整理自 PHP String strspn() function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。