Hàm strrchr() PHP sử dụng như thế nào ?

Hàm strrchr() PHP là một trong những hàm được tích hợp sẵn của ngôn ngữ lập trình PHP. Nó được sử dụng để tìm vị trí của lần xuất hiện cuối cùng của một chuỗi ký tự trong một chuỗi đã cho. Hàm này sẽ trả về tất cả các ký tự từ vị trí này đến cuối chuỗi hoặc giá trị FALSE nếu ký tự không được tìm thấy.

Lập Trình Viên mời bạn cùng tham khảo chi tiết nội dung bên dưới. Bài viết này nằm trong chuyên đề hướng dẫn PHP từ cơ bản đến nâng cao tại dự án Phát Triển Website.

Hàm strrchr() PHP Là gì

Hàm strrchr() PHP là một hàm xử lý chuỗi được tích hợp sẵn trong ngôn ngữ lập trình PHP. Với hàm này, bạn có thể tìm vị trí xuất hiện cuối cùng của một chuỗi ký tự trong một chuỗi đã cho và trả về tất cả các ký tự từ vị trí này đến cuối chuỗi hoặc giá trị FALSE nếu ký tự không được tìm thấy. Hàm strrchr() được coi là an toàn với các ký tự binary.

Hướng dẫn Hàm strrchr() PHP

Cú pháp của hàm strrchr() PHP như sau:

strrchr(string,char)

Trong đó:

  • string: chuỗi cần tìm kiếm.
  • char: chuỗi ký tự cần tìm kiếm theo giá trị ASCII.

Hàm strrchr() PHP sẽ trả về tất cả các ký tự từ vị trí xuất hiện cuối cùng của chuỗi ký tự được tìm thấy đến cuối chuỗi hoặc giá trị FALSE nếu không tìm thấy ký tự.

Dưới đây là một số ví dụ về cách sử dụng hàm strrchr() PHP:

Ví dụ 1

$string = "Hello PHP";
$substring = "PHP";
 
echo "Chuỗi của bạn là: " . $string . "<br>";
echo "Ký tự muốn tìm kiếm là: " . $substring . "<br>";
 
$result = strrchr($string, $substring);
if($result) {
    echo "Kết quả: " . $result;
} else {
    echo "Không tìm thấy ký tự cần tìm";
}

Kết quả:

Chuỗi của bạn là: Hello PHP
Ký tự muốn tìm kiếm là: PHP
Kết quả: PHP

Ví dụ 2

$string = "We are Learning PHP";
$substring = "arning P";
 
echo "Chuỗi của bạn là: " . $string . "<br>";
echo "Ký tự muốn tìm kiếm là: " . $substring . "<br>";
 
$result = strrchr($string, $substring);
if($result) {
    echo "Kết quả: " . $result;
} else {
    echo "Không tìm thấy ký tự cần tìm";
}

Kết quả:

Chuỗi của bạn là: We are Learning PHP
Ký tự muốn tìm kiếm là: arning P
Kết quả: arning P

Ví dụ 3

$string = "Hello PHP";
$substring = "ello W";
 
echo "Chuỗi của bạn là: " . $string . "<br>";
echo "Ký tự muốn tìm kiếm là: " . $substring . "<br>";
 
$result = strrchr($string, $substring);
if($result) {
    echo "Kết quả: " . $result;
} else {
    echo "Không tìm thấy ký tự cần tìm";
}

Cách triển khai hàm strrchr() PHP

Hàm strrchr() PHP được sử dụng để tìm kiếm lần xuất hiện cuối cùng của một ký tự hoặc một chuỗi trong một chuỗi. Hàm này trả về một con trỏ tới lần xuất hiện cuối cùng, hoặc FALSE nếu không tìm thấy ký tự.

Hàm strrchr() PHP có hai đối số:

  • haystack: Chuỗi cần được tìm kiếm.
  • needle: Ký tự hoặc chuỗi cần được tìm kiếm.

Ví dụ:

$haystack = "Hello World";
$needle = "l";

// Tìm kiếm lần xuất hiện cuối cùng của chuỗi "l" trong chuỗi "Hello World"
$result = strrchr($haystack, $needle);

// In ra kết quả
echo $result;

Kết quả của đoạn code trên sẽ là:

"l"

Điều này có nghĩa là ký tự “l” cuối cùng xuất hiện ở vị trí thứ 6 trong chuỗi “Hello World”.

Hàm strrchr() PHP là một hàm binary-safe, nghĩa là nó có thể tìm kiếm ký tự hoặc chuỗi trong một chuỗi bất kể chúng được lưu trữ theo cách nào.

Dưới đây là một số ví dụ về cách triển khai hàm strrchr():

// Tìm kiếm lần xuất hiện cuối cùng của ký tự "a" trong chuỗi "Hello World"
strrchr("Hello World", "a"); // FALSE

// Tìm kiếm lần xuất hiện cuối cùng của tập hợp ký tự "el" trong chuỗi "Hello World"
strrchr("Hello World", "el"); // "l"

// Tìm kiếm lần xuất hiện cuối cùng của ký tự "o" trong chuỗi "Hello World"
strrchr("Hello World", "o"); // "o"

Để tìm kiếm lần xuất hiện cuối cùng của một ký tự hoặc một chuỗi trong một chuỗi, bạn có thể sử dụng hàm strrchr().

Cách triển khai hàm strrchr() bằng vòng lặp

Hàm strrchr() là một hàm tích hợp sẵn trong PHP, vì vậy chúng ta không cần phải triển khai hàm này. Tuy nhiên, nếu bạn muốn hiểu cách hàm strrchr() hoạt động, bạn có thể triển khai hàm này bằng vòng lặp.

Dưới đây là một cách để triển khai hàm strrchr() PHP bằng vòng lặp:

function strrchr_custom($haystack, $needle) {
  $length = strlen($haystack);
  for ($i = $length - 1; $i >= 0; $i--) {
    if ($haystack[$i] == $needle) {
      return $haystack[$i];
    }
  }
  return FALSE;
}

$haystack = "Hello World";
$needle = "l";

// Tìm kiếm lần xuất hiện cuối cùng của chuỗi "l" trong chuỗi "Hello World" bằng vòng lặp
$result = strrchr_custom($haystack, $needle);

// In ra kết quả
echo $result;

Kết quả của đoạn code trên sẽ là:

"l"

Hàm strrchr_custom() hoạt động bằng cách lặp qua từng ký tự trong chuỗi từ cuối lên đầu và kiểm tra xem ký tự đó có bằng ký tự cần tìm hay không. Nếu ký tự đó bằng ký tự cần tìm, hàm sẽ trả về ký tự đó.

So sánh hàm strrchr() và hàm strripos()

Hàm strrchr() PHP và hàm strripos() PHP đều được sử dụng để tìm kiếm lần xuất hiện của một ký tự hoặc một chuỗi trong một chuỗi. Tuy nhiên, hàm strrchr() bắt đầu tìm kiếm từ vị trí cuối cùng của chuỗi, trong khi hàm strripos() bắt đầu tìm kiếm từ vị trí đầu tiên của chuỗi.

Dưới đây là bảng so sánh hai hàm:

Tính năngstrrchr()strripos()
Bắt đầu tìm kiếmVị trí cuối cùngVị trí đầu tiên
Phân biệt chữ hoa chữ thường
Trả về giá trịCon trỏ tới lần xuất hiện cuối cùngVị trí của lần xuất hiện cuối cùng
Sử dụngKhi cần tìm kiếm lần xuất hiện cuối cùng của một ký tự hoặc một chuỗiKhi cần tìm kiếm lần xuất hiện cuối cùng của một ký tự hoặc một chuỗi

Lưu ý

Hàm strrchr() sẽ trả về FALSE nếu không tìm thấy

Ưu và Nhược điểm Hàm strrchr() PHP

Ưu điểm:

  • Hàm strrchr() PHP cho phép tìm kiếm vị trí xuất hiện cuối cùng của một chuỗi ký tự trong một chuỗi đã cho.
  • Hàm này trả về tất cả các ký tự từ vị trí xuất hiện cuối cùng của chuỗi ký tự được tìm thấy đến cuối chuỗi hoặc giá trị FALSE nếu không tìm thấy ký tự.
  • Hàm strrchr() là an toàn với các ký tự binary.

Nhược điểm:

  • Hàm này không hỗ trợ tìm kiếm theo chuỗi ký tự phức tạp. Nó chỉ có thể tìm kiếm theo giá trị ASCII của một chuỗi ký tự duy nhất.
  • Nếu bạn muốn tìm kiếm một chuỗi ký tự phức tạp, bạn sẽ phải sử dụng các hàm khác như strpos(), strstr(), hay preg_match().

Lời khuyên Hàm strrchr() PHP

  • Khi sử dụng hàm strrchr() PHP, bạn cần chắc chắn rằng chuỗi ký tự và giá trị ASCII được sử dụng là chính xác.
  • Bạn nên sử dụng hàm này để tìm kiếm các chuỗi ký tự đơn giản thay vì các chuỗi ký tự phức tạp.
  • Nếu bạn cần tìm kiếm các chuỗi ký tự phức tạp, bạn nên sử dụng các hàm khác như strpos(), strstr(), hay preg_match().

Kết luận

Hàm strrchr() PHP là một trong những hàm xử lý chuỗi tiện ích của ngôn ngữ lập trình PHP. Nó cho phép tìm vị trí xuất hiện cuối cùng của một chuỗi ký tự trong một chuỗi đã cho và trả về tất cả các ký tự từ vị trí này đến cuối chuỗi hoặc giá trị FALSE nếu ký tự không được tìm thấy. Việc sử dụng hàm strrchr() trong PHP rất đơn giản và dễ hiểu.

Tuy nhiên, bạn cần phải chắc chắn rằng các chuỗi ký tự và giá trị ASCII đượcsử dụng là chính xác và tránh sử dụng hàm này để tìm kiếm các chuỗi ký tự phức tạp. Nếu bạn cần tìm kiếm các chuỗi ký tự phức tạp, hãy sử dụng các hàm khác như strpos(), strstr(), hay preg_match().

Với lời khuyên và câu trả lời cho 5 FAQs về hàm strrchr() trong PHP, hy vọng rằng bài viết này sẽ giúp các bạn hiểu rõ hơn về hàm strrchr() và cách sử dụng nó trong ngôn ngữ lập trình PHP.

Hàm strrchr() PHP là gì?

Hàm strrchr() trong PHP là một hàm được tích hợp sẵn, cho phép tìm vị trí xuất hiện cuối cùng của một chuỗi ký tự trong một chuỗi đã cho.

Hàm strrchr() trả về giá trị gì nếu không tìm thấy ký tự?

Nếu hàm strrchr() PHP không tìm thấy ký tự, nó sẽ trả về giá trị FALSE.

Hàm strrchr() có an toàn với các ký tự binary không?

Có, hàm strrchr() là an toàn với các ký tự binary.

Hàm strrchr() có hỗ trợ tìm kiếm theo chuỗi ký tự phức tạp không?

Không, hàm strrchr() không hỗ trợ tìm kiếm theo chuỗi ký tự phức tạp.

Nên sử dụng hàm strrchr() để tìm kiếm các chuỗi ký tự phức tạp không?

Không, bạn nên sử dụng các hàm khác như strpos(), strstr(), hay preg_match() nếu bạn cần tìm kiếm các chuỗi ký tự phức tạp.