Làm cách nào để lấy 3 ký tự cuối cùng từ một chuỗi trong PHP?

Trong bài viết này, chúng tôi xem xét các cách nhanh chóng và dễ dàng để lấy ký tự cuối cùng của chuỗi trong PHP. Đối với tất cả các ví dụ trong bài viết này, giả sử chúng ta có các chuỗi sau

$string = 'foo';
$multibyte = 'foo♥';

Sử dụng độ lệch chuỗi âm

// PHP 7.1+
$string[-1]; // outputs: 'o'

$multibyte[-1]; // outputs: '�'

Sử dụng phương pháp này không an toàn cho nhiều byte. Nó chỉ hoạt động với các chuỗi ở dạng mã hóa một byte (ví dụ: ISO-8859-1)

Sử dụng phương pháp này sẽ kích hoạt một E_NOTICE cho các phiên bản PHP dưới 7. 1 để đọc và một E_WARNING để viết

Sử dụng substr()

substr($string, -1); // outputs: 'o'

substr($multibyte, -1); // outputs: '�'

mb_substr($multibyte, -1); // outputs: '♥'

Khi bạn đang sử dụng mã hóa ký tự nhiều byte (đối với e. g. UTF-8), bạn có thể phải sử dụng biến thể nhiều byte của hàm (i. e. mb_substr()). Tuy nhiên, điều đó chỉ có thể cần thiết nếu một ký tự trong chuỗi được biểu thị bằng hai hoặc nhiều byte liên tiếp. Lý do đằng sau điều này là do hàm substr() thông thường không nhận biết nhiều byte và sẽ không phát hiện được phần đầu hoặc phần cuối của ký tự nhiều byte, điều này sẽ dẫn đến kết quả không chính xác/bị hỏng

Sử dụng truy cập chuỗi trực tiếp

$string[strlen($string)-1]; // outputs: 'o'

$multibyte[strlen($multibyte)-1]; // outputs: '�'

Sử dụng phương pháp này không an toàn cho nhiều byte. Nó chỉ hoạt động với các chuỗi ở dạng mã hóa một byte (ví dụ: ISO-8859-1)


Hy vọng bạn tìm thấy bài viết này hữu ích. Nó được xuất bản vào ngày 25 tháng 4 năm 2020 (và được sửa đổi lần cuối vào ngày 04 tháng 6 năm 2020). Hãy thể hiện tình yêu và sự ủng hộ của bạn bằng cách

Trong đoạn mã này, chúng tôi sẽ chỉ cho bạn một số hàm PHP cho phép xóa ký tự cuối cùng khỏi một chuỗi cụ thể

Tùy chọn đầu tiên là sử dụng hàm substr. Cú pháp của hàm này như sau

Một ví dụ đơn giản về hàm substr được minh họa bên dưới

Đầu ra sẽ như sau

Given string: Hello World!
Updated string: Hello World

Tùy chọn thứ hai là sử dụng hàm substr_replace. Cú pháp cơ bản của nó là

Và đây là một ví dụ về việc sử dụng hàm substr_replace

Và, đây là đầu ra

Given string: Hello World!
Updated string: Hello World

Chức năng này cũng cho phép loại bỏ ký tự cuối cùng của một chuỗi

Đây là cú pháp cơ bản

Trong cú pháp này, bạn có thể nhận thấy ký tự “a”, ký tự này sẽ bị xóa

Vì vậy, một ví dụ về việc xóa ký tự sẽ như sau

Và, đầu ra là như sau

Given string: Hello World!
Updated string: Hello World

Vì vậy, trong đoạn mã này, chúng ta đã thảo luận về ba cách xóa ký tự cuối cùng khỏi chuỗi trong PHP. Đây là những hành động đơn giản sẽ giúp bạn giải quyết một trong những vấn đề phổ biến trong PHP

❮ Tham chiếu chuỗi PHP

Thí dụ

Trả về "thế giới" từ chuỗi

echo substr("Chào thế giới",6);
?>

Tự mình thử »


Định nghĩa và cách sử dụng

Hàm substr() trả về một phần của chuỗi


cú pháp

chất nền (chuỗi, bắt đầu, độ dài)

Giá trị tham số

Tham sốChuỗi mô tảBắt buộc. Chỉ định chuỗi trả về một phần củastartRequired. Chỉ định nơi bắt đầu trong chuỗi
  • Một số dương - Bắt đầu tại một vị trí xác định trong chuỗi
  • Số âm - Bắt đầu tại một vị trí đã chỉ định từ cuối chuỗi
  • 0 - Bắt đầu từ ký tự đầu tiên trong chuỗi
chiều dàiTùy chọn. Chỉ định độ dài của chuỗi trả về. Mặc định là đến cuối chuỗi
  • Một số dương - Độ dài được trả về từ tham số bắt đầu
  • Số âm - Độ dài được trả về từ cuối chuỗi
  • Nếu tham số độ dài là 0, NULL hoặc FALSE - nó trả về một chuỗi rỗng


chi tiết kỹ thuật

Giá trị trả về. Trả về phần được trích xuất của chuỗi hoặc FALSE nếu lỗi hoặc chuỗi trống Phiên bản PHP. 4+Nhật ký thay đổi. PHP7. 0 - Nếu string = start (dài ký tự), nó sẽ trả về một chuỗi rỗng. Các phiên bản trước đó trả về FALSE
PHP5. 2. 2 - 5. 2. 6 - Nếu bắt đầu có vị trí cắt ngắn âm, FALSE được trả về. Các phiên bản khác lấy chuỗi từ đầu

Thêm ví dụ

Thí dụ

Sử dụng tham số bắt đầu với các số dương và số âm khác nhau

echo substr("Chào thế giới",10). "
“;
echo substr("Chào thế giới",1). "
“;
echo substr("Chào thế giới",3). "
“;
echo substr("Chào thế giới",7). "
“;

echo substr("Chào thế giới",-1). "
“;
echo substr("Chào thế giới",-10). "
“;
echo substr("Chào thế giới",-8). "
“;
echo substr("Chào thế giới",-4). "
“;
?>

Tự mình thử »

Thí dụ

Sử dụng các tham số bắt đầu và độ dài với các số dương và số âm khác nhau

echo substr("Chào thế giới",0,10). "
“;
echo substr("Chào thế giới",1,8). "
“;
echo substr("Chào thế giới",0,5). "
“;
echo substr("Chào thế giới",6,6). "
“;

echo substr("Chào thế giới",0,-1). "
“;
echo substr("Xin chào thế giới",-10,-2). "
“;
echo substr("Chào thế giới",0,-6). "
“;
?>

Tự mình thử »


❮ Tham chiếu chuỗi PHP

Làm cách nào để lấy 4 chữ số cuối của chuỗi trong PHP?

Đầu vào. $str = "GeekforGeek. " $n = 9 Đầu ra. forGeek. .
Phương pháp 1. Trong phương thức này, duyệt qua N ký tự cuối cùng của chuỗi và tiếp tục nối thêm chúng vào một chuỗi mới
Thí dụ
Phương pháp 2. Một cách khác để thực hiện việc này là sử dụng hàm thư viện sẵn có substr với các tham số là tên của chuỗi
Thí dụ

Làm cách nào để lấy phần cuối của chuỗi trong PHP?

strrchr trả về phần của chuỗi sau và bao gồm cả ký tự đã cho, không phải chỉ mục số. Vì vậy, bạn sẽ muốn làm $last_section = substr(strrchr($string, '. '), 1); để lấy mọi thứ sau ký tự.

Làm cách nào để lấy 3 ký tự đầu tiên của chuỗi trong PHP?

Bạn có thể sử dụng hàm substr như thế này. echo substr($myStr, 0, 5); Đối số thứ hai của substr là bạn muốn bắt đầu từ vị trí nào và đối số thứ ba là bao nhiêu . Lưu câu trả lời này.

Làm cách nào bạn trích xuất bốn ký tự cuối cùng từ một chuỗi?

Để trích xuất 4 ký tự cuối cùng từ một chuỗi, bạn cần đặt đối số vị trí của hàm SUBSTR() thành vị trí thứ tư đến vị trí cuối cùng trong chuỗi của bạn (you can omit the length argument). By definition, the fourth to last position of a string is its length minus 3.