Substr – Cắt Chuỗi, Trả Về Một Phần Của Chuỗi - PHP - WebVN

(PHP 4, PHP 5)

substr – Cắt chuỗi, trả về một phần của chuỗi

Miêu tả hàm substr

1 stringsubstr(string$string,int$start[,int$length])
Trả về một phần của chuỗi được cắt bởi 2 tham số: $start và $length

Tham số trong substr

string

Chuỗi ký tự đầu vào. Cần phải có ít nhất 1 ký tự.

start

Nếu $start là một số không âm, chuỗi trả về sẽ bắt đầu từ vị trí thứ $start trong chuỗi, ký tự đầu tiên được tính là vị trí số 0. Ví dụ, trong chuỗi ‘abcdef’, ký tự ở vị trí số 0 là ‘a’, ký tự ở vị trí số 2 là ‘c’.

Nếu $start là một số âm, chuỗi trả về sẽ bắt đầu từ vị trí thứ $start nhưng tính từ cuối chuỗi trở lại.

Nếu độ dài của chuỗi nhỏ hơn giá trị $start, giá trị trả về sẽ là FALSE.

Ví dụ 1: Sử dụng $start là số âm

12345 <?phpsubstr("abcdef",-1);// trả về "f"substr("abcdef",-2);// trả về "ef"substr("abcdef",-3,1);// trả về "d"?>
length

Nếu tham số $length được sử dụng và là một số dương, chuỗi trả về sẽ bao gồm $length ký tự, tính từ vị trí thứ $start (tùy thuộc vào độ dài của chuỗi).

Nếu tham số $length được sử dụng và là một số âm, chuỗi trả về được tính từ vị trí $start đến vị trí $length (trong đó vị trí $length được tính từ cuối chuỗi trở lại). Nếu vị trí $start nằm giữa vị trí $length đến cuối chuỗi, giá trị trả về sẽ là FALSE.

Nếu tham số $length được sử dụng và là có giá trị là 0, FALSE hoặc NULL, giá trị trả về sẽ là một chuỗi rỗng.

Nếu tham số $length không được sử dụng, chuỗi trả về sẽ bắt đầu từ vị trí $start cho đến hết chuỗi.

Ví dụ 2: Sử dụng $length là số âm

123456 <?phpsubstr("abcdef",0,-1);// trả về "abcde"substr("abcdef",2,-1);// trả về "cde"substr("abcdef",4,-4);// trả về falsesubstr("abcdef",-3,-1);// trả về "de"?>

Giá trị trả về

Trả về một phần của chuỗi (hoặc một chuỗi rỗng), nếu lỗi trả về FALSE.

Ví dụ

Ví dụ 3:

123456789101112131415 <?phpechosubstr('abcdef',1);// bcdefechosubstr('abcdef',1,3);// bcdechosubstr('abcdef',0,4);// abcdechosubstr('abcdef',0,8);// abcdefechosubstr('abcdef',-1,1);// f // Để lấy một ký tự trong chuỗi// bạn có thể sử dụng 2 dấu ngoặc nhọn (như mảng)$string='abcdef';echo$string[0];// aecho$string[3];// decho$string[strlen($string)-1];// f ?>
Ví dụ 4:
123456789101112131415 <?phpclassapple{publicfunction__toString(){return"green";}} echo"1) ".var_export(substr("pear",0,2),true).PHP_EOL;echo"2) ".var_export(substr(54321,0,2),true).PHP_EOL;echo"3) ".var_export(substr(newapple(),0,2),true).PHP_EOL;echo"4) ".var_export(substr(true,0,1),true).PHP_EOL;echo"5) ".var_export(substr(false,0,1),true).PHP_EOL;echo"6) ".var_export(substr("",0,1),true).PHP_EOL;echo"7) ".var_export(substr(1.2e3,0,4),true).PHP_EOL;?>
Kết quả trả về trong PHP 7
1234567 1)'pe'2)'54'3)'gr'4)'1'5)''6)''7)'1200'
Kết quả trả về trong PHP 5
1234567 1)'pe'2)'54'3)'gr'4)'1'5)false6)false7)'1200'

Lỗi / Ngoại lệ

Trả về FALSE nếu bị lỗi.

123 <?phpvar_dump(substr('a',2));// bool(false)?>

Từ khóa » Hàm Xử Lý String Trong Php