Tiếp tục series học PHP căn bản, bài này mình sẽ giới thiệu về chuỗi (String) trong PHP và tổng hợp một số hàm xử lý chuỗi nhé! Về chuỗi mình trước đây đã từng có nói sơ qua ở bài 3. các kiểu dữ liệu trong PHP rồi, nhưng ở bài này mình sẽ giới thiệu lại luôn nhé!
Chuỗi trong PHP là gì?
Kiểu chuỗi trong PHP nói đơn giản nó là 1 dãy các ký tự, nó bao gồm string(chuỗi) và kiểu char(ký tự). Để khai báo chuỗi cho 1 biến, các bạn chỉ cần gán 1 chuỗi vào biến đó.
Chuỗi phải được bao quanh bằng dấu nháy đơn ‘
hoặc dấu nháy kép “
. Chuỗi sử dụng nháy đơn là một chuỗi tĩnh, còn chuỗi sử dụng nháy kép là một chuỗi động, thay đổi tùy theo giá trị của biến.
Không có giới hạn về độ dài của chuỗi, có thể dài tùy ý nếu bộ nhớ cho phép.
Ví dụ:
$string_1 = "Chào mừng đến với tanhongit.net"; $string_2 = "abc 123 hello";
Các chuỗi được giới hạn bởi các dấu nháy kép được PHP xử lý bằng 2 cách sau đây:
- 1. Các chuỗi kí tự bắt đầu với (\) được thay thế với một kí tự đặc biệt
- 2. Các biến (bắt đầu với $) được thay thế bằng biểu diễn chuỗi của giá trị của nó.
Các quy tắc thay thế:
- \n được thay thế bằng ký tự newline (dòng mới)
- \r được thay thế bởi ký tự carriage-return, được hiểu là đưa con trỏ về đầu dòng nhưng không xuống dòng.
- \t được thay thế bởi ký tự tab
- $ được thay thế bằng một dấu $
- \” được thay thế bằng một dấu nháy kép “
- \\ được thay thế bằng một dấu nháy đơn \
Các hàm xử lý chuỗi trong PHP
strlen($string)
Hàm này có tác dụng đếm xem chuỗi $string có bao nhiêu ký tự và xuất ra màn hình độ dài của chuỗi.
<?php $string = 'tanhongit.net'; echo strlen($string); //kết quả : 13 ?>
strpos($string, $keyword)
Hàm này có tác dụng kiểm tra xem đoạn ký tự $keyword có tồn tại trong chuỗi $string hay không và xuất ra màn hình vị trí bắt đầu tồn tại của $keyword đó trong chuỗi.
<?php $string = 'tanhongit.net'; echo strpos($string,'it'); //kết quả trả về vị trí bắt đầu của chuỗi cần tìm: 7 ?>
explode($separator, $string, $limit)
Hàm này sẽ chuyển một chuỗi $string thành một mảng gồm các phần tử là các ký tự trong mảng. Điều kiện tách mảng sẽ là chuỗi ký tự $separator, và giới hạn phần tử sẽ là $limit.
<?php $string = 'tanhongit.net welcome'; var_dump(explode('t',$string)); //nếu không thêm vào giới hạn tách phần tử $limit thì chuỗi sẽ được tách tối đa phần tử /*array (size=4) 0 => string '' (length=0) 1 => string 'anhongi' (length=7) 2 => string '.ne' (length=3) 3 => string ' welcome' (length=8) */ var_dump(explode('t',$string,2)); //có thêm giới hạn tách chuỗi chỉ gồm 2 phần tử /*array (size=2) 0 => string '' (length=0) 1 => string 'anhongit.net welcome' (length=20) */ ?>
implode($separator, $array)
Hàm này có tác dụng nối tất cả các phần tử của mảng $array
thành chuỗi với mỗi phần tử cách nhau bằng chuỗi $separator.
<?php $array = array('tanhongit.net','welcome','123456'); var_dump(implode('-', $array)); //kết quả: 'tanhongit.net-welcome-123456' var_dump(implode(' ', $array)); //kết quả : 'tanhongit.net welcome 123456' ?>
str_word_count($string)
Hàm này sẽ đếm tổng số lượng trả về số từ trong chuỗi $string.
<?php $string = 'tanhongit.net welcome'; var_dump(str_word_count($string)); /*Kết quả: 3 */ ?>
substr($string,$start,$length)
Hàm này có tác dụng cắt ra một chuỗi con nằm trong chuỗi $string bắt đầu từ ký tự có vị trí thứ $start và chiều dài chuỗi con là $length
<?php $string = 'tanhongit.net welcome'; echo substr($string,0,9) . '<br>'; // output: tanhongit echo substr($string,-4) . '<br>'; // output: come echo substr($string,-4,3) . '<br>'; // output: com echo substr($string,5) . '<br>'; // output: ngit.net welcome ?>
Nếu $start là số dương thì vị trí bắt đầu sẽ tính từ trái sang phải trong chuỗi. Ngược lại, nếu $start là số âm thì vị trí bắt đầu sẽ được tính từ phải sang trái của chuỗi.
strstr($string, $start_string)
Tác dụng của hàm này sẽ tách một chuỗi con từ chuỗi $string được tính bắt đầu từ $start_string cho đến hết chuỗi cha.
<?php $string = 'tanhongit.net welcome'; echo strstr($string,'net') . '<br>'; // output: net welcome echo strstr($string,'n') . '<br>'; // output: nhongit.net welcome echo strstr($string,'.') . '<br>'; // output: .net welcome ?>
strtolower($string)
Hàm có tác dụng chuyển chuỗi $string sang dạng chữ thường.
<?php $string = 'TANHONGIT.NET'; echo strtolower($string); //output: tanhongit.net ?>
strtoupper($string)
Hàm có tác dụng chuyển đổi chuỗi $string sang dạng in hoa.
<?php $string = 'tanhongit.net'; echo strtoupper($string); //output: TANHONGIT.NET ?>
strip_tags($string, $allow)
Hàm này sẽ loại bỏ toàn bộ các thẻ html có trong chuỗi $string, trừ các thẻ được cho phép $allow.
<?php $string = '<p><b><i>tanhongit.net</i></b></p>'; echo strip_tags($string); //output: tanhongit.net echo strip_tags($string, '<b>'); //output : <b>tanhongit.net</b> echo strip_tags($string, '<i>'); //output : <i>tanhongit.net</i> ?>
Sẽ còn cập nhật…
Kết thúc
Bài viết này mình đã liệt kê một số hàm thường được sử dụng để xử lý chuỗi trong PHP, Nếu các bạn muốn xem thêm hãy truy cập link này để tham khảo nhé!
Vậy là trong lộ trình học php căn bản thì tới đây mình đã liệt kê hết các kiến thức về chuỗi giúp các bạn học tập. Cho nên sang bài tiếp theo chúng ta sẽ qua một số phương thức bắt buộc phải biết trong PHP nhé!
Xem thêm:
- Lộ trình học PHP Căn Bản
- Bài 11: Các hàm xử lý mảng (Array) trong PHP
- Bài 10: Mảng (Array) Trong PHP
- Bài 9: Hàm (Function) Trong PHP
- Cách sửa lỗi error establishing a database connection cho website
- Mở Đọc File Excel Trong C# Với Microsoft Office Interop Excel dll
Leave a Reply