PHP là kịch bản được xem là tốt nhất cho xử lý chuỗi, bằng cách sử dụng các hàm xử lý chuỗi, bạn có thể thực hiện các ý định của mình khi tương tác cơ sở dữ liệu, tập tin hay dữ liệu khác.
I.2 Định dạng chuỗi
Khi xuất kết quả ra trình duyệt, bạn có thể sử dụng các định dạng chuỗi tương tự như ngôn ngữ lập trình C. Chẳng hạn, chúng ta in giá trị của biến $i trong trang dinhdang.php như ví dụ 7-1.
<html> <head> <title>String Functions</title> </head> <body> <h4>Dinh dang</h4> <?php $i=12.55; $j=100;
echo "Total amount of order: $i<br>"; printf("Total amount of order: %.1f", $i); echo "<br>";
printf("Total amount of order: %.2f", $i); echo "<br>";
printf("Total amount of order: i=%.2f, j=%.0f", $i,$j); ?>
</body> </html>
Kết quả xuất hiện như hình 8-1
Hình 8-1: Định dạng chuỗi in
Trong đó các định dạng được chia ra nhiêu loại tuỳ thụôc vào các ký tự bạn sử dụng.
% - Kông yêu cầu tham số.
b – Trình bày dạng số integer và hiện thực dưới dạng binary. c - Trình bày dạng số integer và hiện thực dưới dạng mã ASCII. d - Trình bày dạng số integer và hiện thực dưới dạng decimal. e - Trình bày dạng số logic và hiện thực dưới dạng 1.2e+2.
u - Trình bày dạng số integer và hiện thực dưới dạng decimal không dấu. f - Trình bày dạng số float và hiện thực dưới dạng số chấm động.
s - Trình bày dạng chuỗi.
x - Trình bày dạng số integer và hiện thực dưới dạng hệ số 16 với ký tự thường. X - Trình bày dạng số integer và hiện thực dưới dạng hệ số 16 với ký tự hoa.
I.2 Hàm chuyển đổi chuỗi
Để chuyển đổi chuỗi ra ký tự hoa thường bạn sử dụng một trong 4 hàm như ví dụ 7-2 trong trang chuyendoi.php: <html> <head> <title>String Functions</title> </head> <body> <h4>Chuyen doi</h4> <?php $str="Welcome to huukhang.com"; echo $str; echo "<br>"; echo strtoupper($str); echo "<br>"; echo strtolower($str); echo "<br>"; echo ucfirst($str); echo "<br>"; echo ucwords($str); echo "<br>"; ?> </body> </html> Kết quả trình bày như hình 8-2. Hình 8-2: Chuyển đổi chuỗi
I.3 Hàm tách hay kết hợp chuỗi
Để tách hay kết hợp chuỗi, bạn sử dụng một trong các hàm thường sử dụng như strtok, explode hay substr. Chẳng hạn, chúng ta sử dụng 4 hàm này trong ví dụ 7-4 trong trang tachchuoi.php.
<html> <head>
<title>String Functions</title> </head>
<body>
<h4>Tach hop chuoi</h4> <?php
$string = "Xin chao ban da den voi huukhang.com"; $str = $string;
$tok = strtok($string, " "); while ($tok)
{
echo "Word= $tok<br />"; $tok = strtok(" \n\t"); } echo $str."<br>"; echo substr($str,24)."<br>"; $a[]=array(); $a=explode(" ",$str); while($i=each($a)) { echo $i["value"]."<br>"; } ?> </body> </html> Kết quả trình bày như hình 7-4. Hình 7-4: Hàm tách chuỗi
Trong trường hợp kết hợp giá trị của các phần tử của mảng thành chuỗi, bạn sử dụng hàm implode như ví dụ 7-5 trong trang kethop.php:
<html> <head>
<title>String Functions</title> </head>
<body>
<h4>Ket hop chuoi</h4> <?php
$str = "Xin chao ban da den voi huukhang.com"; $a[]=array(); $a=explode(" ",$str); while($i=each($a)) { echo $i["value"]."<br>"; } $str=implode(" ",$a); echo $str; ?>
</body> </html>
Kết quả trình bày như hình 7-5.
Hình 7-5: Hàm kết hợp chuỗi
I.4 Tìm kiếm và thay thế chuỗi
Để thay thế chuỗi, bạn sử dụng hàm str_replace, chẳng hạn trong trường hợp hợp bạn lấy giá trị từ thẻ nhập liệu, sau đó tìm kiếm nếu phát hiện dấu ‘ thì thay thế thành hai dấu nháy như trang replace.php.
<html> <head>
<title>String Functions</title> </head>
<body>
<h4>That the chuoi</h4> <?php $str=""; if (isset($txtfullname)) $str = $txtfullname; if($str != ""); $str=str_replace("o","a",$str); echo $str."<br>"; ?>
<form action=replace.php method=post>
fullname: <input name=txtfullname value="<?=$str?>"><br> <input type=submit value=Submit>
</form> </body> </html>
Hình 7-6: Hàm thay thế chuỗi
Ngoài ra, bạn có thể sử dụng các hàm như strpos (trả về vị trí chuỗi con trong chuỗi mẹ), ...