如果您不打算複製字串的其餘部分,而是只想取得偏移量,如同 str*pos() 函數的精神,請使用 strcspn()
(PHP 5, PHP 7, PHP 8)
strpbrk — 在字串中搜尋任何一組字元
string
要在其中尋找 characters
的字串。
characters
此參數區分大小寫。
傳回從找到的字元開始的字串,如果找不到則傳回 false
。
範例 #1 strpbrk() 範例
<?php
$text = 'This is a Simple text.';
// 因為先比對到 'i',所以會輸出 "is is a Simple text."
echo strpbrk($text, 'mi');
// 因為字元區分大小寫,所以會輸出 "Simple text."
echo strpbrk($text, 'S');
?>
稍微修改了 Evan 的程式碼,以便將陣列用於第二個參數
<?php
function strpbrkpos($s, $accept) {
$r = FALSE;
$t = 0;
$i = 0;
$accept_l = count($accept);
for ( ; $i < $accept_l ; $i++ )
if ( ($t = strpos($s, $accept[$i])) !== FALSE )
if ( ($r === FALSE) || ($t < $r) )
$r = $t;
return $r;
}
?>