Hàm trong thư viện hàm

Một phần của tài liệu tự học php (Trang 105 - 114)

III. Xây dựng hàm trong PHP

2. Hàm trong thư viện hàm

a. Kiểu dữ liệu string

Kiểu dữ liệu string dùng để lưu trữ chuỗi các ký tự.

Ví dụ 5.44:

$hoten = “Hồ Diên Lợi”; Một số hàm xử lý chuỗi.

- Hàm ltrim(str [,char] ): Xoá khoảng trắng từ bên trái của chuỗi, nếu có tham số char thì sẽ bỏ luôn các các ký tự bên trái trong char.

Ví dụ 5.45: Cắt bỏ các ký tự dư thừa bên trái chuổi

<?php

$st="aaaa Hoàng Nam"; $st = ltrim($st,'a');

echo $st; //"Hoàng Nam"

?>

- Hàm rtrim( str [,char]):Xoá khoảng trắng từ bên phải của chuỗi, nếu có tham số char thì sẽ bỏ luôn các các ký tự bên phải trong char.

Ví dụ 5.46: Cắt bỏ các ký tự dư thừa bên phải

<?php

$st = rtrim($st,'a');

echo $st; //"Hoàng Nam"

?>

- Hàm trim($st [,char]): Loại bỏ kí tự thừa ở đầu và cuối của xâu, nếu có tham số char thì sẽ bỏ luôn các các ký tự bên phải trong char.

Ví dụ 5.47: Cắt bỏ các ký tự dư thừa bên trái và bên phải

<?php

$st=" aaaa Hoàng Nam aaaa "; $st = trim($st,'a');

echo $st; //"Hoàng Nam"

?>

- Hàm addslashes($st): định dạng dữ liệu trong chuổi để lưu vào CSDL.

Để lưu chuỗi có các dấu nháy ' hay cặp ", dấu \, dấu \\ thì chúng ta dùng thêm dấu \ vào phía trước chúng như sau: \', \", \\, \\\.

Ví dụ 5.48: Định dạng dữ liệu

<?php

$st ="Who're you?";

echo $st."</br>";// Who're you?

echo addslashes($st); //Who\'re you?

?>

Vì các dấu nháy khi lưu vào trong CSDL sẽ xuất hiện dấu \ trước các ký tự, khi đọc lên trình duyệt chúng ta cần loại bỏ các dấu đó. Để loại bỏ ta sẽ sử dụng hàm stripslashes()

- Hàm stripslashes():

Ví dụ 5.49: Loại bỏ các ký tự.

<?php

$st ="Who\'re you?";

echo stripslashes($st); //Who're you?

?>

- Hàm ucfirst($st ) : Viết hoa kí tự đầu tiên của một xâu.

Ví dụ 5.50: Viết hoa ký tự đầu tiên của một xâu.

<?php

$st = 'xin chào!';

echo ucfirst($st); // Xin chào!

- Hàm ucwords($st ): Viết hoa kí tự đầu tiên của mỗi từ.

Ví dụ 5.51: Viết hoa kí tự đầu tiên của mỗi từ.

<?php

$st = 'xin chào!';

echo ucwords($st); // Xin Chào!

?>

- Hàm strtolower($st ) : Biến kí tự bất kỳ thành chữ thường.

Ví dụ 5.52: Biến kí tự bất kỳ thành chữ thường

<?php

$st = 'HỒ dIên LợI!';

echo strtolower($st); // hồ diên lợi

?>

- Hàm strtoupper($st ): biến kí tự bất kỳ thành chữ hoa.

Ví dụ 5.53: Biến kí tự bất kỳ thành chữ hoa.

<?php

$st = 'HỒ dIên LợI!';

echo strtoupper($st); // Hồ DIÊN LỢI

?>

- Hàm strlen($st): Kết quả trả về độ dài của xâu

Ví dụ 5.54: Xuất ra trình duyệt độ dài lớn

<?php

$hoten = 'Hồ Diên Lợi';

echo “Độ dài xâu ” . strlen($hoten); //Kết quả trả về là 13

?>

- Hàm strcmp($str1, $str2): hàm so sánh chuỗi không phân biệt chữ hoa và chữ thường, hàm này trả về kết quả là:

+ = 0: nếu hai chuỗi bằng nhau

+ < 0: nếu chuỗi $str1 nhỏ hơn chuỗi $str2 + > 0: nếu chuỗi $str1 lớn hơn chuỗi $str2

Ví dụ 5.55: So sánh chuỗi

<?php

echo strcmp('chao','Chao'); // kết quả 0

echo strcmp('chao chu','chao anh'); // kết quả là 1

- Hàm tìm một chuỗi trong 1 chuỗi strstr($st1, $st2) và strchr($s1, $st2): Hàm trả về kết quả là một chuỗi con của chuỗi $st1 được lấy từ vị trí xuất hiện đầu tiên của chuỗi $st2 đến hết chuỗi $st1 nếu tìm thấy chuỗi $st2 trong chuỗi $st1, nếu không tìm thấy thì trả về giá trị FALSE.

Ví dụ 5.56: Tìm kiếm chuổi trong chuỗi

<?php

$st="hodienloi@yahoo.com";

echo strstr($st, "@")."</br>"; //@yahoo.com

echo strchr($st, "#"); //

?>

- Hàm tìm vị trí chuỗi con strpos($st1,$st2): Hàm trả về vị trí chuỗi con đầu tiên của cuổi $st2 trong chuỗi $st1, nếu không tìm thấy thì kết quả trả về là FALSE

Ví dụ 5.57: Trả về vị trí đầu tiên của chuỗi trong chuỗi

<?php

$st="hodienloi@yahoo.com";

echo strpos($st,"yahoo"); // vị trí 10

echo strpos($st,"gmail"); //

?>

- Hàm tìm kiếm và thay thế str_replace($st1, $st2, $st): Hàm tìm kiếm chuỗi $st1 trong chuỗi $st, nếu tìm thấy thì thay thế chuỗi $st1 bằng chuỗi $st2 trong chuỗi $st.

Ví dụ 5.58: Tìm kiếm và thay thế yahoo bằng gmail, hotmail bằng gmail

<?php

$st="hodienloi@yahoo.com";

echo str_replace('yahoo', 'gmail', $st); //hodienloi@gmail.com

echo str_replace('hotmail', 'gmail', $st); //hodienloi@yahoo.com

?>

- Hàm strrev($st ): Đảo ngược 1 xâu.

Ví dụ 5.59: Đảo xâu ký tự

<?php

echo strrev("Hello world!"); // kết quả trả về là "!dlrow olleH"

?>

- Hàm tách chuỗi explode($ch,$st): Hàm tách chuỗi $st thành nhiều phần tử con bằng cách chỉ định chuỗi tách $ch và gán từng chuỗi con vào các phần tử của mảng

<?php

$st="Xin chào tất cả các bạn trong lớp"; $mang = explode(' ',$st);

for($i=0 ; $i<count($mang); $i++)

echo "Từ thứ $i là: ".$mang[$i]."</br>";

?>

- Hàm kết hợp chuỗi implode($ch, $mang): Hàm kết hợp các phần tử của mảng thành một chuỗi các phần tử khi ráp thành chuỗi sẽ cách nhau bằng một chỉ thị $ch.

Vi dụ 5.61: Nối nhiều phần mảng thành một chuỗi.

<?php

$array = array('Xin', 'chào', 'tất', 'cả', 'các', 'bạn'); $st = implode(" ", $array);

echo $st; //Kết quả xuất ra là: Xin chào tất cả các bạn

?>

- Hàm đổi số thành ký tự trong bảng mã ASCII chr():

Ví dụ 5.62: Chuyển mã thành ký tự trong bảng mã ASCII

<?php

for($i =15 ;$i<25; $i++)

echo chr($i).","; //kết quả là: , , , , , , , , , ,

?>

- Phép toán nối chuỗi (.)

Ví dụ 5.63: Nối hai chuỗi

<?php

$ho_dem = 'Hồ Diên'; $ten = 'Lợi';

$ho_ten =$ho_dem .' '. $ten;

echo $ho_ten; // Hồ Diên Lợi

?>

b. Kiểu dữ liệu s

- Hàm giá trị tuyệt đối: abs(x)

Ví dụ 5.64: Giá trị tuyệt đố của -5

<?php

echo abs(-5);

- Hàm làm tròn: round(x[,i])

Ví dụ 5.65: Hàm làm tròn số

<?php

$so = 1234.56789;

echo round($so,2) // kết quả là 1234.57

?>

- Hàm làm lấy phân nguyên: floor(x)

Ví dụ 5.66: Hàm lấy phần nguyên

<?php

$so = 123.678;

echo floor($so); // kết quả của hàm là 123

?> - Hàm ex : exp(x) Ví dụ 5.67: Hàm ex <?php echo exp(3); ?>

- Hàm lượng giác: sin(x), cos(x), tan(x) với x radian

Ví dụ 5.68: Tính sin, cos, tan của 30 độ

<?php

define("PI",3.14);

echo sin(PI*30/180); // kết quả 0.4997701026431 echo cos(PI*30/180);// kết quả 0.86615809440546 echo tan(PI*30/180); //Kết quả 0.57699640039287

?>

- Hàm căn bậc hai: sqrt(x)

Ví dụ 5.69: <?php

echo sqrt($so); // Kết quả là 6

?>

- Hàm ngẫu nhiên trong khoảng: rand(n1,n2)

Ví dụ 5.70: <?php echo rand(10,20); ?> - Hàm logaric: log(x) Ví dụ 5.71: <?php $so = 20;

echo log($so); // kết quả 2.995732273554

?> - Hàm mũ: pow(a, x) Ví dụ 5.72: <?php $so = 10; echo pow($so,2); ?>

- Hàm pi(): Hàm trả về giá trị là số pi, hàm không có tham số.

Ví dụ 5.73: <?php

$so = pi();

echo $so*10; // 31.415926535898

?>

- Hàm range(gt1,gt2): Hàm lấy giá trị nguyên trong khoảng gt1… gt2

Ví dụ 5.74: <?php

foreach (range(0, 12) as $number) {

echo $number; }

foreach (range(0, 100, 10) as $number) { echo $number; } ?> - Hàm number_format(): Định dạng số Ví dụ 5.75: <?php $number = 1234.56; echo number_format($number)."</br>"; //1.235 echo number_format($number, 2, ',', ' ')."</br>"; //1 234,46 $number = 1234.5678; echo number_format($number, 2, '.', '');//1234.57 ?>

c. Kiểu dữ liệu ngày, gi

- Hàm checkdate() kiểm tra ngày nhập vào có hợp lệ không? Cú pháp: checkdate ($month , $day, $year )

Trong đó: Hàm trả về giá trị đúng hoặc sai.

$month, $day, $year: là kiểu dữ liệu số nguyên, là tháng ngày năm được nhập vào để kiểm tra. Ví dụ 5.76: <?php $day = 29; $month = 2; $year = 2010;

$kq=checkdate($month, $day, $year); if($kq)

{

echo "Ngay thang hop le"; }

else {

echo "Ngay thang khong hop le"; }

- Hàm date()

Cú pháp: date ($format [,$timestamp ] )

Trong đó:

Hàm trả về một chuỗi được qui định bởi chuỗi định dạng $format Nếu $format =

D Ngày có dạng hai chữ số 01- 31 D Thứ trong tuần có 3 ký tự Mon - Sun

J Ngày được có dạng 1-31

L/l Thứ trong tuần được viết đầy đủ Monday - Sunday

N Cho ra số thứ tự của ngày trong tuần (1-7)1: Monday – 7: Sunday W Cho ra số thứ tự ngày trong tuần 0: Monday – 6: Sunday

Z Cho ra ngày thứ máy trong năm(0 - 365) W Cho ra số thứ tự tuần trong 1 năm

F Cho ra tên tháng đầy đủ từ January tới December trong năm M Cho ra tháng từ 01 - 12

M Cho ra tên tháng chỉ có 3 ký tự đầu từ Jan đến Dec N Cho ra tháng từ 1 - 12 Y Cho ra năm có 4 chữ số 2009 Y Cho ra năm có 2 chữ số 09 A Dạng AM và PM A Dạng am và pm G Định dạng đồng hồ 12 H Cho ra giờ 0 -23 h H Cho ra giờ 1- 12h I Cho ra phút (0-59) S Cho ra giây(0-59)

- Lấy giá trị của ngày hiện tại: getdate()

Hàm trả về mảng gồm 11 phần tử để lưu trữ các giá trị(seconds, minutes, hours, mday, wday, mon, year, yday, weekday, month, 0) của ngày tháng năm hiện tại.

Ví dụ: <?php

$today = getdate(); print_r($today);

?>

- Chuyển chuỗi thành thời gian: strtotime()

- Kiểm tra và chuyển thời gian sang đơn vị giây: mktime() - Định dạng thời gian thành só nguyên: idate()

Một phần của tài liệu tự học php (Trang 105 - 114)