當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP String strrpos()用法及代碼示例


strrpos() 是 PHP 的內置函數,用於查找子字符串在另一個字符串中最後一次出現的位置。它是 PHP 的區分大小寫的函數,這意味著它以不同的方式處理大寫和小寫字符。

strrpos() 類似於 strripos(),它也用於查找另一個字符串中最後一次出現的子字符串,但 strripos() 是一個不區分大小寫的函數,而 strrpos() 是一個區分大小寫的函數。 PHP 4+ 版本支持此函數。

PHP 的一些相關函數類似於 strrpos() 函數:

相關函數

  • stripos() - 它在另一個字符串中找到一個字符串的第一次出現。 (不區分大小寫)
  • strpos() - 它在另一個字符串中找到一個字符串的第一次出現。 (區分大小寫)
  • strripos() - 它在另一個字符串中找到最後一次出現的字符串。 (不區分大小寫)

用法

以下函數 strrpos() 的語法是:

strrpos ($string, $search, $start)

參數

strrpos() 函數接受三個參數,其中兩個是強製性的,即主字符串和搜索字符串。第三個參數是可選的,即 $start,我們從這裏開始搜索字符串。

$string (required) - 這是一個強製參數,我們在其中搜索 $search 字符串的出現。

$search(必需) - 它也是一個強製參數,用於指定要搜索的字符串。

$start (optional) - 它是這個函數的最後一個可選參數,它指定從哪裏開始搜索。此參數具有整數值。

返回值

strrpos() 函數返回子字符串在另一個字符串中最後一次出現的位置。如果未找到該字符串,則它將返回 FALSE。

It is important to note that the string position starts from 0, not from 1.

變更日誌

  • PHP 5.0 在 strrpos() 函數中包含了一個新參數 $start,它定義了從哪裏開始搜索。
  • PHP 5.0 之後,我們還可以在 $search 參數中傳遞一個字符串,而不是隻傳遞單個字符。

例子

有一些詳細的例子來學習 strrpos() 函數的函數。這些示例將提供此函數的基本知識。

例子1

下麵是 strrpos() 的基本示例:

<?php
	$string = "Hello! I'm Mishti Agrawal";
	$search ='gra';
	$output1 = strripos( $string, $search );	
	echo "The last occurrence of the search string is found at position:".$output1;
?>

輸出:

上述程序的輸出將是-

The last occurrence of the search string is found at position:19

例子2

<?php
	$string = "Hello everyone! Welcome to javaTpoint";
	$search ='l';
	$output1 = strripos( $string, $search );	
	echo "The last occurrence of the search string is found at position:".$output1;
?>

輸出:

在上麵的這個例子中,"l" 的最後一次出現是 16。

The last occurrence of the search string is found at position:16

範例3:區分大小寫

<?php
	$string = "Welcome to javaTpoint";
	$search ='COME';
	$res1 = strripos( $string, $search );	
	echo $res1."</br>";
	echo "Search string is not found, so it returned:";
	var_dump($res1);
?>

輸出:

這個例子證明了 strrpos() 是一個區分大小寫的函數,因為它對 "COME" 和 "come" 的處理不同。上述程序的輸出將是-

Search string is not found, so it returned:bool(false)

示例 4

在此示例中,搜索字符串在主字符串中不可用,因此它將返回布爾值 FALSE。

<?php
	$string = "Welcome to javaTpoint";
	$search ='misthi';
	$res1 = strripos( $string, $search );	
	echo $res1."</br>";
	echo "Search string is not found so it returned:";
	var_dump($res1);
?>

輸出:

Echo 不足以顯示布爾值,因此我們使用 var_dump() 函數打印該布爾值 FALSE。

Search string is not found so it returned:bool(false)

例 5

下麵的示例包含 if-else 條件。如果未找到字符串,則顯示未找到搜索字符串,否則,將顯示搜索字符串最後一次出現的位置。

<?php
	$string = "Welcome to javaTpoint";
	$search1 ='cml';
	$search2="ome";
	$res1 = strrpos( $string, $search1);	
	if($res1==false)
		echo "Sorry! <b>". $search1. "</b> is not found in the string";
	else
		echo "The following search string <b>". $search1. "</b> find at position:".$res1;
	
	echo '</br>';
	$res2 = strrpos( $string, $search2);	
	if($res2==false)
		echo "Sorry! string is not found";
	else
		echo "The following search string <b>". $search2. "</b> is found at position:".$res2;
?>

輸出:

Sorry! cml is not found in the string
The following search string ome is found at position:4

範例6:通過使用長度參數

<?php
	
	$string = "Welcome to javaTpoint";
	$search2="Wel";
	 $position = strrpos($string, $search2, 7);   
    	if ($position == true){ 
        		echo "Found at position " . $position; 
   	 } 
    	else{ 
      		  echo "Search string is not found."; 
  	  }
?>

輸出:

在上麵的例子中,"Wel" 出現在主字符串中;它仍然顯示“未找到搜索字符串”的輸出。這是因為搜索是從第 7 位開始,而 "Wel" 在第 1 位可用。

Search string is not found.

例 7

<?php
	$string = "Welcome to javaTpoint";
	$search="ava";
	 $position = strripos($string, $search, 4);   
    	if ($position == true){ 
        		echo $search. " is found at position " . $position; 
   	 } 
    	else{ 
      		  echo "Search string not Found"; 
  	  }
?>

輸出:

在上麵的例子中,strrpos() 從 4 開始搜索th位置。它在 12 處找到了搜索字符串th位置。

ava is found at position 12






相關用法


注:本文由純淨天空篩選整理自 PHP String strrpos() function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。