3. D
H
L
4/25/2015
1. Cú pháp PHP
3
Dạng 1: Dạng chuẩn
<?php Mã lệnh PHP ?>
Dạng 2: Dạng ngắn gọn
<? Mã lệnh PHP ?>
Dạng 3: Cú pháp giống với ASP.
<% Mã lệnh PHP %>
Dạng 4: Cú pháp bắt đầu bằng script
<script language=php>.....Mã lệnh PHP</script>
Nhắc nhở: Nên dung dạng chuẩn.
Giáo viên: Hồ Diên Lợi
4. D
H
L
4/25/2015
2. Hàm xuất nội dung lên trình duyệt web
Hàm echo(<thông tin>); hoặc echo <thông tin>;
Hàm print(<thông tin>); hoặc print <thông tin>;
Hàm print_r(<mảng>);
Trong đó:
<thông tin>: có thể là hằng, biến, biểu thức hay
hàm.
4Giáo viên: Hồ Diên Lợi
5. D
H
L
4/25/2015
Ví dụ
<?php
echo ("Chào các bạn");
echo "Chào các bạn";
print ("Chào các bạn");
print "Chào các bạn";
$a=array(1,2,3,4,5,6,7,8,9);
print_r($a);
?>
5Giáo viên: Hồ Diên Lợi
2. Hàm xuất nội dung lên trình duyệt web…
6. D
H
L
4/25/2015
3. Lời giải thích
6
Dạng 1: # đây là ghi chú.
Dạng này chỉ áp dụng ghi đó chỉ nằm trên một dòng
văn bản
Dạng 2: // đây là ghi chú.
Dạng này cũng chỉ áp dụng ghi đó chỉ nằm trên một
dòng văn bản
Dạng 3: /* đây là một ghi chú dài
Áp dụng cho nhiều hàng */
Giáo viên: Hồ Diên Lợi
7. D
H
L
4/25/2015
4. Biến trong PHP
Biến là một ô nhớ trong bộ nhớ chính dùng để lưu trữ giá trị
Biến trong PHP bắt đầu bằng dấu $ theo sau là tên biến
Biến có thể được khai báo khi dùng.
Biến trong PHP phân biệt CHỮ HOA, chữ thường
Tên biến bao gồm chữ cái, chữ số, dấu gạch nối (_) và phải bắt
đầu bằng chữ cái hoặc dấu gạch nối.
Biến không cần khai báo (được tự động khai báo vào lần gán giá
trị đầu tiên).
Việc sử dụng biến chưa khởi tạo sẽ gây lỗi.
7Giáo viên: Hồ Diên Lợi
8. D
H
L
4/25/2015
Ví dụ: Khai báo và khởi gán cho tên biến.
<?php
$var_number = 6;
$var_string = "Hello world";
$_POST["name"]="John";
$var_arr = array("Hồ", "Diên", "Lợi");
?>
8
4. Biến trong PHP…
Giáo viên: Hồ Diên Lợi
9. D
H
L
4/25/2015
Để khởi gán giá trị cho biết thực hiện như sau:
$name_var = <giá trị biến>;
$name_var = <biểu thức>;
Ví dụ:
<?php
$soluong = 20;
$gia = 25000;
$t_tien = $gia * $soluong;
?>
9
4. Biến trong PHP…
Giáo viên: Hồ Diên Lợi
10. D
H
L
4/25/2015
Biến cục bộ
Biến cục bộ là biến chỉ có ý nghĩa khi được
sử dụng trong phạm vị xác định.
Giả sử biến trong hàm là biến cục bộ, nó chỉ
có ý nghĩa trong hàm.
10
4. Biến trong PHP – Phạm vi của biến
Giáo viên: Hồ Diên Lợi
11. D
H
L
4/25/2015
Biến toàn cục
Biến cục bộ là biến luôn có ý nghĩa khi sử
dụng.
Khi khai báo biến toàn cục ta sử dụng từ khóa
global
Biến static
Biến static không mất giá trị khi ra khỏi phạm
vi xác định, vẫn giữ giá trị khi gọi lại biến.
11
4. Biến trong PHP – Phạm vi của biến…
Giáo viên: Hồ Diên Lợi
12. D
H
L
4/25/2015
Ví dụ: Biến cục bộ
<?php
function test() {
echo $a; // biến cục bộ
}
?>
<?php
$a= 10;
test(); // không cho kết quả
echo $a; // kết quả 10
?>
12
4. Biến trong PHP – Phạm vi của biến…
Giáo viên: Hồ Diên Lợi
13. D
H
L
4/25/2015
Ví dụ: Biến toàn cục
<?php
function sum() {
global $a, $b; //biến toàn cục
$b = $a+$b;
}
?>
<?php
$a = 10; $b = 20;
sum();
echo $b; // kết quả 30
?>
13
4. Biến trong PHP – Phạm vi của biến…
Giáo viên: Hồ Diên Lợi
14. D
H
L
4/25/2015
Ví dụ: biến static
<?php
function hien() {
static $a =0;
echo $a."</br>";
$a++;
}
?>
<?php
hien(); // kết quả 0
hien(); // kết quả 1
hien(); // kết quả 2
?>
14
4. Biến trong PHP – Phạm vi của biến…
Giáo viên: Hồ Diên Lợi
15. D
H
L
4/25/2015
Hằng là một giá trị không đổi trong quá trình xử lý.
Quy tắc đặt tên hằng giống quy tắc đặt tên biến, chỉ
không sử dụng dấu $
Một số hằng định nghĩa sẵn: FALSE, TRUE…
Hằng được định nghĩa bằng hàm:
define(<tên_hằng>,<giá_trị>);
15
5. Hằng
Giáo viên: Hồ Diên Lợi
16. D
H
L
4/25/2015
Sử dụng hằng
Ví dụ:
<?php
define("PI",3.1423);
$r = 10;
echo "Diện tích". 2*PI*$r*$r;
?>
16
5. Hằng…
Giáo viên: Hồ Diên Lợi
17. D
H
L
4/25/2015
Kiểu số(số nguyên, số thập phân).
Kiểu chuỗi(string)
Kiểu logic(boolean)
Kiểu mảng(array)
Kiểu đối tượng(object)
17
6. Kiểu dữ liệu
Giáo viên: Hồ Diên Lợi
18. D
H
L
4/25/2015 18
6. Kiểu dữ liệu…
Ép kiểu: Sử dụng cú pháp tương tự trong C
$x = "123abc"; //$x là chuỗi
$x =(int) "123abc";
//$x là số nguyên=123
$s="abc123"+10;//10
Giáo viên: Hồ Diên Lợi
19. D
H
L
4/25/2015 19
6. Kiểu dữ liệu…
Ép kiểu: Sử dụng cú pháp tương tự trong C
Ký hiệu Ý nghĩa kiểu
(int), (integer) Số nguyên
(real), (double), (float) Số thập phân
(string) Chuỗi
(array) Mảng
(object) Đối tượng
(bool), (boolean) Logic
(unset) NULL, tương tự như gọi unset()
Giáo viên: Hồ Diên Lợi
20. D
H
L
4/25/2015 20
7. Các toán tử
Toán tử toán học
Phép
toán
Ví dụ Kết quả
+ $y =2; $x=$y+2; 4
- $y =2; $x=5-$y; 3
* $y =2; $x=$y*5; 10
/ $y =5; $x=$y/2; 2.5
% $y =5%3;
$x =16%8;
2
0
++ $x =5; $x++; x=6
-- $x =5; $x--; x=4
Giáo viên: Hồ Diên Lợi
21. D
H
L
4/25/2015 21
7. Các toán tử…
Toán tử gán
Phép toán Ví dụ Tương đương
= $x=$y; $x=$y;
+= $x+=$y; $x=$x+$y;
-= $x-=$y; $x=$x-$y;
*= $x*=$y; $x=$x*$y;
/= $x/=$y; $x=$x/$y;
.= $x.=$y; $x=$x.$y;
%= $x%=$y; $x=$x%$y;
Giáo viên: Hồ Diên Lợi
22. D
H
L
4/25/2015 22
7. Các toán tử…
Toán tử so sánh
Phép toán Ví dụ
== 5==8 kết quả false
!= 5!=8 kết quả true
<> 5<>8 kết quả true
> 5>8 kết quả false
< 5<8 kết quả true
>= 5>=8 kết quả false
<= 5<=8 kết quả true
Giáo viên: Hồ Diên Lợi
23. D
H
L
4/25/2015 23
7. Các toán tử…
Toán tử logic
Phép toán Ví dụ
&& $x=6; $y=3;
($x < 10 && $y > 1) kết quả true
|| $x=6; $y=3;
($x==5 || $y==5) kết quả false
! $x=6; $y=3;
!($x==$y) kết quả true
Giáo viên: Hồ Diên Lợi
24. D
H
L
4/25/2015 24
7. Các toán tử…
Toán tử @
Không phát sinh lỗi khi sử dụng toán tử @
Ví dụ:
<?php
$a = 10;
$b = 0;
$c1 =$a/$b;
echo "Kết quả :".$c1; //thông báo lỗi
$c2 = @($a/$b);
echo "Kết quả :".$c1
?>
Giáo viên: Hồ Diên Lợi
25. D
H
L
4/25/2015 25
8. Sự khác nhau giữa " " và ' '
Ví dụ:
<?php
$a = 3;
$b = 4;
$c = $a+$b;
echo "Tổng $a + $b =$c"; // Tổng 3 + 4 =7
echo 'Tổng $a + $b =$c'; // 'Tổng $a + $b =$c
?>
Giáo viên: Hồ Diên Lợi
26. D
H
L
4/25/2015 26
9. Tham chiếu
• Trong PHP tham chiếu có nghĩa là lấy cùng giá một
trị bằng nhiều tên biến khác nhau.
• Ký hiệu tham chiếu là &.
Ví dụ:
<?php
$a = 10;
$b = &$a;
echo "Kết quả :".$b;
?>
Giáo viên: Hồ Diên Lợi
28. D
H
L
4/25/2015
1. Câu lệnh if…else …
Câu lệnh if dạng khuyết:
if (<BTĐK>) <lệnh>;
Câu lệnh if đầy đủ:
if (<BTĐK>) <lệnh 1>; else < lệnh 2> ;
Câu lệnh if lồng nhau:
if (<BTĐK>) <lệnh 1>; elseif < lệnh 2> …
28Giáo viên: Hồ Diên Lợi
29. D
H
L
4/25/2015
2. Toán tử ?
<tên_biến> = (<btdk>)? <value_true>: <value_false>;
Ví dụ:
<?php
$a = 10;
$b =20;
$kq = ($a>$b)?$a:$b;
echo "Kết quả".$kq;// kết quả 20
?>
29Giáo viên: Hồ Diên Lợi
30. D
H
L
4/25/2015
3. Câu lệnh switch
switch (gt)
{
case gt1: <công việc 1>; break;
case gt2: <công việc 2>; break;
...
default: <công việc n+1>; break;
}
30Giáo viên: Hồ Diên Lợi
31. D
H
L
4/25/2015
4. Câu lệnh lặp
Câu lệnh while
while (<btdk>) <lệnh>;
Câu lệnh do … while
do { <lệnh >} while (<btđk>);
Câu lệnh for
Câu lệnh foreach
foreach($doituong as $value) {<lệnh>;}
31Giáo viên: Hồ Diên Lợi
32. D
H
L
4/25/2015
Lệnh break
break cho phép ta thoát khởi cấu trúc điều khiển
dựa trên kết quả của biểu thức logic
Lệnh continue
Khi gặp continue, các lệnh bên dưới continue tạm
thời không thực hiện tiếp, khi đó con trỏ sẽ nhảy về
đầu vòng lặp để kiểm tra giá trị của biểu thức điều
kiện còn đúng hay không. continue thường đi kèm
với một biểu thức logic
32
5. Lệnh break và continue
Giáo viên: Hồ Diên Lợi
34. D
H
L
4/25/2015
1. Đặc điểm của mảng trong PHP
Mảng là tập hợp vô hạn các phần tử.
Các phần tử có thể có kiểu dữ liệu bất kỳ.
Chỉ số mảng có kiểu dữ liệu bất kỳ.
Ví dụ:
$a= array();
$a[0]=2.5; $a['c']=10; $a['ngaysinh']="18/09/1994";
34Giáo viên: Hồ Diên Lợi
35. D
H
L
4/25/2015
2. Khai báo mảng
Cách 1: Khai báo chưa biết số phần tử mảng
Cú pháp: $ten_mang = array();
Ví dụ:
<?php
$a = array();
for ($i=0; $i<10; $i++)
$a[$i] = $i * 2;
?>
35Giáo viên: Hồ Diên Lợi
36. D
H
L
4/25/2015
Cách 2: Khai báo biết trước spt mảng
Cú pháp:
$ten_mang = array(<spt mảng>);
Ví dụ:
<?php
$a = array(10);
for ($i=0; $i<count($a); $i++)
$a[$i] = $i * 2;
?>
36
2. Khai báo mảng…
Giáo viên: Hồ Diên Lợi
37. D
H
L
4/25/2015
Cách 3: Khai báo biết giá trị của mảng
Cú pháp:
$ten_mang = array([khóa =>] giá_trị_1, …);
Trong đó:
- Khóa có thể là số nguyên hoặc chuỗi.
- Nếu ta không tạo giá trị khóa, thì khóa sẽ tự động
phát sinh.
37
2. Khai báo mảng…
Giáo viên: Hồ Diên Lợi
38. D
H
L
4/25/2015
Cách 4: Gán giá trị cho từng phần tử mảng
Cú pháp:
$ten_mang[ ] =<giá trị>;
Hoặc
$ten_mang[<giá trị khóa>] =<giá trị>;
38
2. Khai báo mảng…
Giáo viên: Hồ Diên Lợi
39. D
H
L
4/25/2015
3. Truy xuất phần tử mảng
Truy xuất đến phần tử mảng theo cú pháp:
$bien = $ten_mang[<giá trị khóa>];
Ví dụ:
$var1 = $mang[0];
$var2 = $mang[1];
$var3 = $mang[2];
$var4 = $mang[3];
39Giáo viên: Hồ Diên Lợi
40. D
H
L
4/25/2015
4. Các thao tác trên mảng
Duyệt mảng có từ khóa động
Ví dụ:
<?php
$mang = array("4","6","8","0","3","5","9");
$spt = count($mang);
for($i = 0; $i < $spt; $i++ )
{
echo "t" . $mang[$i];
}
?>
40Giáo viên: Hồ Diên Lợi
41. D
H
L
4/25/2015
Duyệt mảng có khóa do người dùng tạo
Ví dụ:
<?php
$mang = array('a'=>4, 'c'=>6, 'd'=>8,'e'=>3);
foreach($mang as $vars )
{
echo "t" . $vars;
}
?>
41
4. Các thao tác trên mảng…
Giáo viên: Hồ Diên Lợi
42. D
H
L
4/25/2015
Duyệt để lấy giá trị khóa và giá trị phần tử.
Ví dụ:
<?php
$mang = array("4","6","8","0","3","5","9");
foreach($mang as $khoa =>$vars )
{
echo "</br>" . $khoa." " .$vars;
}
?>
42
4. Các thao tác trên mảng…
Giáo viên: Hồ Diên Lợi
43. D
H
L
4/25/2015
5. Một số hàm liên quan đến mảng
- count($arr): số phần tử mảng
- sort($arr): sắp xếp mảng tăng dần
- rsort($arr): sắp xếp mảng giảm dần
- min($arr), max($arr): phần tử nhỏ nhất, phần tử lớn nhất
- array_push($arr, $pt): Thêm phần tử vào cuối mảng
- array_pop($arr): Lấy ra phần tử vào cuối mảng
- array_unshift($arr, $pt): Thêm phần tử vào đầu mảng
- array_shift($arr): Lấy ra phần tử vào đầu mảng
43Giáo viên: Hồ Diên Lợi
45. D
H
L
4/25/2015
1. Khai báo và khởi tạo
Khai báo chưa biết số phần tử mảng
$ten_mang = array(array(), array(),…);
Khởi gán giá trị cho từng phần tử mảng
$ten_mang [vị trí hàng] [vị trí cột] = <giá trị>;
45Giáo viên: Hồ Diên Lợi
46. D
H
L
4/25/2015
2. Truy xuất phần tử trong mảng
$bien = $ten_mang [vị trí hàng] [vị trí cột];
Ví dụ:
<?php
$a= array(array(1,2),array(3,4));
for ($i =0; $i< count($a); $i++)
{
foreach($a[$i] as $var)
echo $var;
echo "</br>";
}
?>
46Giáo viên: Hồ Diên Lợi
47. D
H
L
4/25/2015
3. Các thao tác trên mảng
Duyệt mảng có từ khóa động
<?php
$dong = count($mang);
for($i = 0; $i < $dong; $i++ ) {
foreach($mang[$i] as $vars )
{
echo "t" . $vars;
}
}
?>
47Giáo viên: Hồ Diên Lợi
49. D
H
L
4/25/2015
1. Hàm do người dùng định nghĩa
Để khai báo hàm ta sử dụng cấu trúc sau:
Cú pháp:
function ten_ham([danh sách tham số])
{
// khối lệnh bên trong hàm
[returm gia_trị;]
}
49Giáo viên: Hồ Diên Lợi
52. D
H
L
4/25/2015
<?php
function tinh_tong($a, $b)
{
$c = $a + $b;
return $c;
}
// gọi lại hàm
$t = tinh_tong(6,5);
echo "Tổng: ".$t; //kết quả: Tổng 11
?>
52
1. Hàm do người dùng định nghĩa…
Giáo viên: Hồ Diên Lợi
54. D
H
L
4/25/2015
Hàm ltrim(str [,char]); xóa bỏ các ký tự trắng bên
trái hoặc xóa bỏ các ký tự char bên trái
Hàm rtrim(str [,char]); xóa bỏ các ký tự trắng
bên phải hoặc xóa bỏ các ký tự char bên trái
Hàm trim(str [,char]); xóa bỏ các ký tự trắng hai
bên hoặc xóa bỏ các ký tự char hai bên.
54
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
55. D
H
L
4/25/2015
Ví dụ
<?php
$st="aaaa Hoàng Nam aaaa";
$st = ltrim($st,'a');//' Hoàng Nam aaaa'
$st = rtrim($st,'a');//' Hoàng Nam '
$st = trim($st);//'Hoàng Nam'
echo $st; //" Hoàng Nam"
?>
55
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
56. D
H
L
4/25/2015
Hàm ucfirst($st): hàm chuyển ký tự đầu tiên của
chuỗi thành hoa.
Hàm ucwords($st): viết hoa kí tự đầu tiên của mỗi
từ.
Hàm strtolower($st): chuyển kí tự bất kỳ thành
chữ thường.
Hàm strtoupper($st ): biến kí tự bất kỳ thành chữ
hoa.
56
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
57. D
H
L
4/25/2015
Ví dụ:
<?php
$st = "nguyễn Hoàng Nam";
echo ucfirst($st); // Nguyễn Hoàng Nam
echo ucwords($st); // Nguyễn Hoàng Nam
echo strtolower($st); // nguyễn hoàng nam
echo strtoupper($st); // NGUYỄN HOÀNG NAM
?>
57
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
58. D
H
L
4/25/2015
Hàm strlen($st): Kết quả trả về độ dài của chuỗi
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 strstr($st1, $st2) và strchr($s1, $st2): tìm
chuỗi st2 trong st1, nếu tồn tại hàm sẽ trả về chuỗi
con trong $st1 bắt đầu $st2.
58
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
59. D
H
L
4/25/2015
Ví dụ:
<?php
$st = "Nguyễn Hoàng Bảo Nam";
echo strlen($st); // 20
echo strcmp('Hải','Nam'); // kết quả -1
echo strcmp('Nam','Nam') "; // kết quả 0
echo strcmp('Nam','Hải'); // Kết quả 1
$email = "hodienloi@hitc.edu.vn";
echo strstr($email,'@'); //@hitc.edu.vn
?>
59
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
60. D
H
L
4/25/2015
Hàm strpos($st1,$st2): tìm vị trí chuỗi con $st2
trong chuỗi $st1
Hàm str_replace($seach, $rep, $st): tìm kiếm và
thay thế
Hàm strrev($st ): đảo ngược 1 xâu.
60
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
61. D
H
L
4/25/2015
Ví dụ:
<?php
$email = "hodienloi@hitc.edu.vn";
echo strpos($email,'@hitc'); // 9
echo str_replace('hitc.edu.vn','yahoo.com',$email);
$st = "ssalc ym olleH";
echo strrev($st); //Hello my class
?>
61
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
62. D
H
L
4/25/2015
Hàm explode($ch, $st): tách chuỗi $st thành
nhiều phần tử và gán cho phần tử mảng, tách theo
ký tự $ch.
Hàm implode($ch, $mang): kết hợp các phần tử
mảng thành chuỗi, các phần tử mảng cách nhau
bởi $ch
Hàm chr(number): đổi số thành ký tự trong bảng
mã ASCII
62
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
63. D
H
L
4/25/2015
Ví du:
<?php
$st = "Nguyễn","Hoàng","Bảo","Nam";
$mang = explode(',',$st);
print_r($mang);
$st = implode(' ',$a);//Nguyễn Hoàng Bảo Nam
echo($st);
echo chr(97); // kết quả a
echo chr(65); //kết quả A
?>
63
2. Thư viện hàm – Chuỗi
Giáo viên: Hồ Diên Lợi
64. D
H
L
4/25/2015
Hàm abs(x): Giá trị tuyệt đối của x
Hàm round(x[,i]) : hàm làm tròn
Hàm exp(x): ex
Hàm lượng giác: sin(x) /cos(x)/tan(x)
Hàm sqrt(x): căn bậc 2
Hàm rand([n1,n2]): ngẫu nhiên số trong khoảng
n1,n2 hoặc ngẫu ngiên số bất kỳ
64
2. Thư viện hàm – Kiểu số
Giáo viên: Hồ Diên Lợi
65. D
H
L
4/25/2015
Ví dụ:
echo abs(-5); //echo abs(5); kết quả 5
$so = 1234.567;
echo round($so); // Kết quả 1234
echo round($so,2); // Kết quả 1234.57
echo round($so,-2); // Kết quả 1200
echo exp(2); //kết quả 7.3890560989307
echo sin(30*PI()/180); // Kết quả 0.5
echo "Căn bậc 2:".sqrt(9); // Kết quả 3
echo rand(); //trả về số ngẫu nhiên
echo rand(10,100); // trả về số ngẫu nhiên 10..100
65
2. Thư viện hàm – Kiểu số
Giáo viên: Hồ Diên Lợi
66. D
H
L
4/25/2015
Hàm pow(a,x): a mũ x
Hàm pi(): Trả về số Pi
Hàm range(gt1,gt2): hàm lấy giá trị nguyên trong
khoảng gt1.. gt2 và trả về mảng
Hàm number_format($number[,tham số định
dạng]): Định dạng số
66
2. Thư viện hàm – Kiểu số
Giáo viên: Hồ Diên Lợi
67. D
H
L
4/25/2015
Ví dụ:
echo pow(10,2); // kết quả 100
echo pi(); // kết quả 3.1415926535898
$mang = range(10, 100);
print_r($mang);
$number = 1234.5678;
echo number_format($number); // 1,235
echo number_format($number, 2, ',', ' ');//1 234,57
echo number_format($number, 2, '.', '');//1234.57
67
2. Thư viện hàm – Kiểu số
Giáo viên: Hồ Diên Lợi
68. D
H
L
4/25/2015
Hàm checkdate($month, $day, $year) kiểm tra ngày nhập
vào có hợp lệ không?
Ví dụ:
<?php
$m = 2; $d = 30; $y = 2010;
echo checkdate($m, $d, $y); // 0
$d = 24;
echo checkdate($m, $d, $y); // 1
?>
68
2. Thư viện hàm – Kiểu ngày, giờ
Giáo viên: Hồ Diên Lợi
69. D
H
L
4/25/2015
Hàm date(format [, timestamp])
Trong đó, format
D Ngày Mon đến Sun
d Ngày 01 đến 31
M Tháng Jan đến Dec
m Tháng 01 đến 12
Y Năm có 4 ký số
y Năm có 2 ký số
69
2. Thư viện hàm – Kiểu ngày, giờ
Giáo viên: Hồ Diên Lợi
70. D
H
L
4/25/2015
Hàm getdate(): lấy seconds, minutes, hours, mday,
wday, mon, year, yday, weekday, month, 0 và trả về
một mảng có chỉ số mảng là seconds,….
Ví dụ:
$d = getdate();
echo $d['seconds'];
echo $d['minutes'];
echo $d['hours'];
echo $d['mday'];……….
70
2. Thư viện hàm – Kiểu ngày, giờ
Giáo viên: Hồ Diên Lợi
72. D
H
L
4/25/2015
1. Khai báo và thể hiện lớp trong PHP
Đối tượng được khai báo thông qua từ khóa class.
Các thuộc tính khai báo dưới dạng các biến.
Các phương thức được khai báo dưới dụng các
hàm.
class name_class
{
//danh sách các biến, hằng, lớp
// danh sách các hàm
}
72Giáo viên: Hồ Diên Lợi
73. D
H
L
4/25/2015
class my_web
{
var $a; // Thuộc tính
var $b; //Thuộc tính
function tong($a,$b) //Phương thức
{
return $a+$b;
}
}
73
1. Khai báo và thể hiện lớp trong PHP
Giáo viên: Hồ Diên Lợi
74. D
H
L
4/25/2015
1. Khai báo và thể hiện lớp trong PHP
Khởi tạo một đối tượng ta sử dụng từ khóa new
$tên_đối_tượng = new tên_lớp();
Để gọi hàm trong lớp ta sử dụng toán tử ->
$tên_đối_tượng -> tên_hàm();
Hoặc dùng toán tử : : để gọi đến 1 hàm hay một
biến (biến phải được khai báo static)
$tên_đối_tượng :: tên_hàm();
$tên_đối_tượng :: tên_biến;
74Giáo viên: Hồ Diên Lợi
76. D
H
L
4/25/2015
2. Phương thức và thuộc tính sd $this
Một số khai báo phương thức và thuộc tính của lớp:
- Phương thức: public
- Phương thức: protected
- Phương thức: private
76Giáo viên: Hồ Diên Lợi
77. D
H
L
4/25/2015
2. Phương thức: public
public: có thể truy xuất từ bên ngoài hoặc từ bên trong
phương thức thông qua con trỏ đặc biệt $this
77
class A {
public $a = " Hoang";
function chao() {
print "Xin chao";
}
function test(){
print $this->chao();
print $this->a;
} //Xin chao Hoang
}
Giáo viên: Hồ Diên Lợi
78. D
H
L
4/25/2015
2. Phương thức: protected
protected: chỉ có thể truy xuất từ bên trong phương thức
của lớp đó hoặc từ một lớp kế thừa từ lớp đó
78
<?php
class A {
protected $a = 10;
function chaoa()
{
print $this->a;
}
}
class B extends A {
protected $a = 20;
function chaob() {
print $this->a;
}
} $ob = new B;$ob-
>chaoa(); // 20
?>
Giáo viên: Hồ Diên Lợi
79. D
H
L
4/25/2015
2. Phương thức: private
private: chỉ có thể được truy xuất từ bên trong lớp đó,
cũng sử dụng con trỏ $this như protected
class A {
private $a = “private_member”;
function printHello()
{
print $this->a;
}
}
79Giáo viên: Hồ Diên Lợi
80. D
H
L
4/25/2015
2. Phương thức: static
Biến static có thể coi như một biến toàn cục được đặt
trong 1 lớp nhưng có thể truy xuất từ bất kỳ đâu qua
lớp đó, sử dụng toán tử ::
Khi gọi biến static trong hàm ta sử dụng toán tử self
thay cho con trỏ this
80Giáo viên: Hồ Diên Lợi
81. D
H
L
4/25/2015
class A {
static $a = 5;
function hienthi()
{
echo self::$a;
}
}
echo A::$a++;//6
A:: hienthi();//5
81
2. Phương thức: static
Giáo viên: Hồ Diên Lợi
82. D
H
L
4/25/2015
Phương thức static: tương tự như biến static nhưng
ngoài việc gọi nó bằng toán tử self nó có thể được truy
xuất bằng con trỏ this trong 1 hàm
82
2. Phương thức: static
Giáo viên: Hồ Diên Lợi
83. D
H
L
4/25/2015
class A {
static function hienthi() {
echo "Xin chao";
}
function show () {
self:: hienthi();//hoac $this->hienthi();
}
}
A:: hienthi();//A::show(); sẽ lỗi khi dùng $this
$obj = new A();
$obj->show();//hoac $obj->printHello();
83
2. Phương thức: static
Giáo viên: Hồ Diên Lợi
84. D
H
L
4/25/2015
Chú ý Để tránh sự không rõ ràng giữa toán tử this và self
hay -> và :: người ta thường quy ước như sau:
Khi gọi đến thuộc tính hay đối tượng kiểu static trong
một lớp hay từ ngoài lớp gọi đến 1 hàm hay 1 thuộc
tính của lớp nên dùng toán tử self và ::
Khi gọi đến thuộc tính hay đối tượng bình thường trong
một lớp hay từ ngoài lớp gọi đến 1 hàm hay 1 thuộc
tính của lớp thì dùng toán tử this và ->
84
2. Phương thức: static
Giáo viên: Hồ Diên Lợi
85. D
H
L
4/25/2015
3. Hằng số trong lớp
Có thể định nghĩa hằng trên một lớp.
Hằng có giá trị không đổi và khai báo không có $
Tên hằng không được trùng với tên biến, lớp, hàm
hay kết qủa của 1 phép toán hay 1 hàm
const myConst = "Const_Value";
Để lấy giá trị của 1 hằng ta chỉ có thể dùng toán tử ::
hoặc thông qua một phương thức
85Giáo viên: Hồ Diên Lợi
87. D
H
L
4/25/2015
4. Đa hình
Đa hình trong PHP sử dụng các lớp và thừa kế giữa
chúng.
Cú pháp
class child extends parent
{
// khai báo
}
87Giáo viên: Hồ Diên Lợi
88. D
H
L
4/25/2015
PHP không hỗ trợ đa thừa kế như C++
PHP cung cấp 1 giải pháp khác cho việc tạo ra
nhiều hơn 1 quan hệ của lớp bằng cách sử dụng
interfaces như là Java
88
4. Đa hình…
Giáo viên: Hồ Diên Lợi
89. D
H
L
4/25/2015
5. Parent :: và self ::
PHP hỗ trợ 2 lớp dành riêng để dẽ dàng hơn trong
việc viết các ứng dụng hướng đối tượng
Self:: thường được dùng để truy cập đến các đối
tượng, phương thức kiểu static hay hằng số của lớp
hiện tại
Parent:: gọi đến lớp cha và thường được dùng khi
muốn gọi hàm tạo hay các phương thức của lớp cha
89Giáo viên: Hồ Diên Lợi
91. D
H
L
4/25/2015
Hàm isset() dùng để kiểm tra xem “biến” có tồn tại
biến hay không?
Ví dụ:
<?php
$a = "Nguyễn Hoàng Nam";
isset($a); // trả về giá trị true
isset($b); // trả về giá trị false
?>
91
1. Hàm isset()
Giáo viên: Hồ Diên Lợi
92. D
H
L
4/25/2015
Hàm empty() dùng để kiểm tra biến xem có tồn tại
biến hay không?
Ví dụ:
<?php
$a = "Nguyễn Nam";
empty($a); // trả về giá trị false
empty($b); // trả về giá trị true
?>
92
2. Hàm empty()
Giáo viên: Hồ Diên Lợi
93. D
H
L
4/25/2015
Hàm is_numeric() kiểm tra biến có kiểu giá trị kiểu
số hay không.
Ví dụ:
<?php
$a = "Nguyễn Hoàng Nam";
$b =123;
is_numeric($a); // trả về giá trị false
is_numeric($b); // trả về giá trị true
?>
93
3. Hàm is_numeric()
Giáo viên: Hồ Diên Lợi
94. D
H
L
4/25/2015
Hàm is_int(<tên_biến>) hoặc is_long(<tên_biến>) kiểm tra
giá trị của biến có phải là số nguyên hay không.
Ví dụ:
<?php
$a = 124.5;
$b =123;
is_int($a); // trả về giá trị false
is_int($b); // trả về giá trị true
?>
94
4. Hàm is_int() và is_long()
Giáo viên: Hồ Diên Lợi
95. D
H
L
4/25/2015
Hàm is_string() kiểm tra giá trị của biến có phải là
kiểu chuỗi hay không
Ví dụ:
<?php
$a = 124.5;
$b ="Nguyễn Hoàng Nam";
is_string($a); // trả về giá trị false
is_string($b); // trả về giá trị true
?>
95
5. Hàm is_string()
Giáo viên: Hồ Diên Lợi
96. D
H
L
4/25/2015
Hàm is_double() kiểm tra giá trị của biến có phải là
kiểu số có dấu chấm động
Ví dụ:
<?php
$a = 12345;
$b =123.45;
is_double($a); // trả về giá trị false
is_double($b); // trả về giá trị true
?>
96
6. Hàm is_double()
Giáo viên: Hồ Diên Lợi
97. D
H
L
4/25/2015
Hàm gettype() trả về kiểu dữ liệu của biến: integer,
string, double, array, object, class…
Ví dụ:
<?php
$a = 12345;
$b = "Nguyễn Hoàng Nam";
echo gettype($a); // trả về numeric
echo gettypy($b); // trả về string
?>
97
7. Hàm gettype()
Giáo viên: Hồ Diên Lợi
99. D
H
L
4/25/2015
1. Đặc điểm của form
Form là một thành phần của trang web.
Các đối tượng thể hiện của form:
TextField
Textarea
Button
RadioButton
CheckBox
List/Menu
99Giáo viên: Hồ Diên Lợi
100. D
H
L
4/25/2015
Các thuộc tính cơ bản của form:
name: tên form
action: hành động
method: phương thức
Loại nội dung trong form
enctype = content-type với content-type:
application/x-www-form-urlenconded
multipart/fom-data
100
1. Đặc điểm của form…
Giáo viên: Hồ Diên Lợi
101. D
H
L
4/25/2015
Khi muốn lấy giá trị từ form đưa về trang nào
thì trong action ta nhập vào trang đó.
Vi dụ:
<form action = "xu_ly.php" method ="POST"
name="form1">
……………
</form>
Chú ý: Trang này là bắt buộc là .php
101
1. Đặc điểm của form…
Giáo viên: Hồ Diên Lợi
102. D
H
L
4/25/2015
Phương thức là hình thức chuyển giá trị trên form đến
trang action.
Có 2 phương thức:
POST: chuyển giá trị đến trang action và nhận
giá trị ta dùng biến $_POST hoặc $_REQUEST.
GET: chuyển giá trị đến trang action và nhận giá
trị ta dùng biến $_GET hoặc $_REQUEST
102
1. Đặc điểm của form…
Giáo viên: Hồ Diên Lợi
103. D
H
L
4/25/2015
Đặc điểm
- Biến $_POST được dùng để lấy các giá trị trên
form thông qua phương thức POST.
- Thông tin được gửi từ form với phương thức này
không giới hạn dung lượng thông tin gửi đi.
- Thông tin được gửi bằng phương thức POST sẽ
không hiện thị lên địa chỉ URL nên người dùng
không thể thấy được.
103Giáo viên: Hồ Diên Lợi
1. Đặc điểm của form - POST
104. D
H
L
4/25/2015
Cách sử dụng
Cú pháp lấy giá trị của một đối tượng trên form
sau khi form submit:
$_POST['tên điều khiển'];
104Giáo viên: Hồ Diên Lợi
1. Đặc điểm của form – POST…
105. D
H
L
4/25/2015
Đặc điểm
Biến $_GET được dùng để lấy giá trị trên
form bằng phương thức GET. Thông tin gửi
qua không vượt quá 100 ký tự
Thông tin được gửi đi bằng phương thức
GET sẽ hiển thị trên địa chỉ URL nên người
dùng có thể thấy được các thông tin này.
105Giáo viên: Hồ Diên Lợi
1. Đặc điểm của form - GET
106. D
H
L
4/25/2015
Cách sử dụng
Cú pháp lấy giá trị trên form bằng phương
thức GET như sau:
$_GET["Tên điều khiển"];
106Giáo viên: Hồ Diên Lợi
1. Đặc điểm của form – GET…
107. D
H
L
4/25/2015
Đặc điểm
Biến $_REQUET chọn nội dung cả các biến
$_POST, $_GET, $_COOKIE
Có thể lấy thông tin không cần xác định
phương thức form.
Độ bảo mật thông tin thấp
107Giáo viên: Hồ Diên Lợi
2. Biến $_REQUEST
108. D
H
L
4/25/2015
Cách sử dụng
Cú pháp lấy giá trị bằng biến $_REQUEST
$_REQUEST["Tên điều khiển"];
108Giáo viên: Hồ Diên Lợi
2. Biến $_REQUEST…
109. D
H
L
4/25/2015
Dùng để nhập và hiển thị dữ liệu: có 3 loại sau:
• Single line: nhập và hiển trên 1 dòng văn bản
• Multi line: nhập và hiển trên nhiều dòng văn
bản
• Password: hiển thi dấu * thay cho ký tự
109
3. Input[type="text|password"]
Giáo viên: Hồ Diên Lợi
110. D
H
L
4/25/2015
4. Textarea
Dùng để nhập và hiển thị dữ liệu dạng multi line:
Num line: số dòng văn bản hiển thị
Wrap: Tăng số dòng bản nếu văn bản vượt
quá num line
110Giáo viên: Hồ Diên Lợi
111. D
H
L
4/25/2015
Dùng để tạo ra các nút như submit, reset:
Button submit: khi ta nhấn vào nút này dữ
liệu trên form sẽ gửi về server.
Button reset: khi nhấn vào nút này các đối
tượng trên form sẽ reset.
Button: khi nhấn vào nút này sẽ gọi một kịch bản
(Javascript)
111
5. Input[type="submit|reset|button"]
Giáo viên: Hồ Diên Lợi
112. D
H
L
4/25/2015
Checkbox là một đối tượng có hai trạng thái
on/off
Trên form có nhiều checkbox, đồng thời ta có thể
chọn nhiều checkbox.
112
6. Input[type="checkbox"]
Giáo viên: Hồ Diên Lợi
113. D
H
L
4/25/2015
Radio là một đối tượng có hai trạng thái on/off.
Trên form có nhiều radio, các radio cùng nhóm có
cùng name.
Chỉ có thể chọn một radio trên nhóm.
113
7. Input[type="radio"]
Giáo viên: Hồ Diên Lợi
114. D
H
L
4/25/2015
8. Select - option
Là danh sách nhiều mục chọn.
Có thể chọn một hoặc nhiều mục chọn.
Muốn chọn nhiều mục chọn thì thuộc tính
"Selectons Allow Multiple"
114Giáo viên: Hồ Diên Lợi
115. D
H
L
4/25/2015
9. input[type="file"]
Đối tượng này cho phép người dùng chọn một file
để xem xét các thuộc tính hoặc upload,…
Để lấy giá trị từ form ta sử dụng biến sau:
$_FILES["tendk"]["name"]: tên tập tin
$_FILES["tendk"]["type"]: kiểu
$_FILES["tendk"]["tmp_name"]
$_FILES["tendk"]["size"]
$_FILES["tendk"]["error"]
115Giáo viên: Hồ Diên Lợi