Tut PHP 005: xử lý chuỗi trong PHP

String là một kiểu dữ liệu rất quan trọng trong PHP, một số kiểu dữ liệu khác như integer hay float trong nhiều trường hợp có thể coi như những string. Sau đây mình sẽ đưa ra một số hàm thông dụng thao tác với string.

1. Nhóm hàm in chuỗi ra màn hình

Trong nhóm những hàm in chuỗi ra màn hình ta đưa ra 2 hàm cơ bản hay được sử dụng nhất là: echo và print.

Cách sử dụng:


echo "Hello world";

echo ("Hello world");

print "Hello world";

print("Hello world");

Tuy rằng trong ví dụ trên thì kết quả in ra màn hình là giống nhau nhưng hai hàm echo và print cũng có một điểm khác nhau là: hàm echo không có giá trị trả về còn hàm print luôn luôn trả về giá trị là 1. Vì thế nên tôi khuyên các bạn sử dụng hàm echo, nó sẽ nhanh hơn hàm print.

2. Hàm strlen($string)

Hàm strlen có tác dụng đếm tổng số ký tự trong 1 chuỗi. Ví dụ:


$x = "hello";

$y = strlen($x);

echo $y;

Kết quả của đoạn code PHP này sẽ in lên màn hình giá trị của $y = 5; vì độ dài của chuỗi $x = “hello” là 5.

3. Hàm str_word_count($string)

Hàm này có tác dụng đếm số từ có trong một chuỗi. Ví dụ:


echo str_word_count("toi yeu em");

Kết quả: 3

4. Hàm addslashes($string)

Hàm này có tác dụng thêm ký tự “\” vào trước những ký tự như ‘ hay ” trong chuỗi $string với tác dụng tránh lỗi sql injection khi thêm dữ liệu vào database.

Ví dụ:


echo addslashes('Đời tôi "cô đơn" nên đi đâu cũng cô đơn');

Kết quả in ra:

Đời tôi \”cô đơn\” nên đi đâu cũng cô đơn

5. Hàm stripslashes($string)

Hàm này có tác dụng ngược với hàm addslashes vì nó loại bỏ tất cả ký tự \. Mục đích của hàm này là xử lý chuỗi trước khi in ra trình duyệt.

6. Hàm str_replace($search, $replace, $subject)

Hàm str_replace có tác dụng tìm kiếm và thay thế một chuỗi con bằng một chuỗi khác.

Ví dụ:


<?php
echo str_replace("world","Blanka","Hello world!");
?>

Kết quả in ra màn hình:

Hell0 Blanka!

Hàm str_replace tìm kiếm chuỗi “world” trong chuỗi “Hello world!” và thay thế bởi chuỗi “Blanka” nếu tìm thấy.

Thêm một ví dụ rất hữu ích của hàm str_replace:


$str = 'Hello! codomotoxo@ yamaha#bonjua% sed$ hehe';

$str = str_replace( array('!', '@', '#', '$', '%') , '', $str );

echo $str;

Kết quả: Hello codomotoxo yamahabonjua sed hehe

Trong ví dụ trên hàm str_replace thay thế tất cả những ký tự: !, @, #, $, % bằng một chuỗi rỗng ”.

7. Nhóm hàm thao tác giữa mảng và chuỗi

* Hàm explode($sub, $string)

Hàm này có tác dụng tách một chuỗi thành 1 mảng theo 1 chuỗi tách.

Ví dụ:


<?php
$str = "Hello everybody. My name is Blanka.";
print_r (explode(" ",$str));
?>

Kết quả: Array ( [0] => Hello [1] => everrybody. [2] => My [3] => name [4] => is [5] => Blanka. )

Hàm explode đã tách chuỗi $str thành 1 mảng có 6 phần tử là 6 từ phân cách nhau bởi dấu cách.

* Hàm implode($sub, $array)

Hàm implode có tác dụng ngược lại với hàm explode, tức là nó sẽ nối những phần tử của mảng $array thành 1 chuỗi thông qua chuỗi nối $sub.

Ví dụ:


<?php
$arr = array('Hello','World!','Beautiful','Day!');
echo implode(" ",$arr);
?>

Kết quả: Hello World! Beautiful Day!

Trong ví dụ trên thì hàm implode đã nối những phần tử của mảng $arr thành 1 xâu phân cách nhau bởi dấu cách trước khi in ra màn hình.

Leave a Reply

Your email address will not be published. Required fields are marked *