You are on page 1of 26

Copyright 2013 - Khoa Cng ngh thng tin i hc Khoa hc t nhin, Tp.

HCM
Pht trin ng dng web vi PHP v MySQL
PHP
MySQL
Jun 2013
http://www.e-learning.vn
Ch 5:
Hng i tng trong PHP
Tng quan v khai bo lp i tng, s dng
i tng trong PHP
Khai bo thuc tnh, phng thc,
Lng V Minh
Web Programming Php & MySQL - 2013
Ni dung
Khai bo lp
Khai bo i tng
Thuc tnh ca lp
Phng thc ca lp
Lp k tha
Lp o
3
Web Programming Php & MySQL - 2013
Ni dung
Khai bo lp
Khai bo i tng
Thuc tnh ca lp
Phng thc ca lp
Lp k tha
Lp o
4
Web Programming Php & MySQL - 2013
Khai bo lp
class ClassName
{
scope $FieldName;
scope function funcName([parameters])
{
[return value;]
}
}
5
Field scope: var / public / private / protected / static / final
Function scope: public / private / protected / static / final
Quy tc t tn: Tun theo quy tc t tn bin, tn hm
Mc nh hm ly scope l public
Nu khng khai bo thuc tnh, h thng t to thuc tnh lc s dng
Trong x l lp, s dng con tr $this-> truy xut thuc tnh / hm
Web Programming Php & MySQL - 2013
Khai bo lp V d
6
Web Programming Php & MySQL - 2013
Khai bo i tng
S dng ton t new khai bo i tng
S dng ton t -> truy xut thuc tnh / phng thc c phm
vi public / var
7
Khng c
du $
Web Programming Php & MySQL - 2013
Khai bo lp Khai bo i tng (lu )
Trong mt file, ch nn khai bo 1 lp i tng
Tn file nn trng tn vi tn lp
Nu khai bo nhiu lp trong 1 file th phi c du ; cch
gia cc lp
Khai bo lp trong 1 file *.php nn tch bit so vi cc
file khai bo i tng ca lp
S dng km t kha include_once trong file khai bo
i tng
8
Web Programming Php & MySQL - 2013
Khai bo lp Khai bo i tng (V d)
9
02-DeclareNote.php
index.php
Web Programming Php & MySQL - 2013
Khai bo lp Khai bo i tng (V d)
10
03-DeclareDiem.php
03-DeclareDuongthang.php
index.php
Web Programming Php & MySQL - 2013
Ni dung
Khai bo lp
Khai bo i tng
Thuc tnh ca lp
Phng thc ca lp
Lp k tha
Lp o
12
Web Programming Php & MySQL - 2013
Thuc tnh ca lp
Phm vi ca thuc tnh:
public / var
private
protected
final
static
13
class ClassName
{
scope $FieldName;
}
Web Programming Php & MySQL - 2013
Thuc tnh hng
C php:
const TenBienHang = Gitr;
Cch gi gi tr hng ca lp:
className::TenBienHang
14
Web Programming Php & MySQL - 2013
Phng thc ca lp
Phm vi ca phng thc:
public
private
protected
abstract : Ch s dng trong lp o
final
static
15
class ClassName
{
scope function funcName([parameters])
{
[return value;]
}
}
Web Programming Php & MySQL - 2013
Phng thc ca lp
Khai bo tng minh tham s i tng, mng
Khi thc thi, hm sai kiu DL tham s s b bo
li c php.
16
class ClassName
{
scope function funcName(ClassName para1, paramenters)
{
[return value;]
}
}
Web Programming Php & MySQL - 2013
Phng thc ca lp V d
Khai bo lp SinhVien gm cc thuc tnh:
MSSV, HoTen, NgaySinh, DiaChi
Khai bo lp LopHoc gm cc thuc tnh:
MaLop, TenLop, Danh sch sinh vin
17
Web Programming Php & MySQL - 2013
Phng thc ca lp - Constructor
Mi class ch c khai bo duy nht mt
constructor
19
class ClassName
{
function __construct([parameters])
{
---------
}
}
Web Programming Php & MySQL - 2013
Phng thc ca lp - Constructor
20
Web Programming Php & MySQL - 2013
Phng thc ca lp - Destructor
Mi class ch c khai bo duy nht mt
destructor
21
class ClassName
{
function __destruct()
{
--------
}
}
Web Programming Php & MySQL - 2013
Thuc tnh v phng thc static
22
Ch hm static
mi s dng
c bin
static
Khng s dng
$this trong hm
static
Web Programming Php & MySQL - 2013
Thuc tnh v phng thc static
S dng thuc tnh static
Trong lp : self::$FieldName
Ngoi lp : className::$FieldName
S dng phng thc static
Trong lp : self::funcName()
Ngoi lp : className::funcName()
23
class ClassName
{
scope static $FieldName;
scope static function funcName([parameters])
{
[return value;]
}
}
Web Programming Php & MySQL - 2013
Mt s hm v ton t c bit
$bien instanceof className
true : nu $bin l i tng kiu className
false: nu $bin khng l i tng kiu className
boolean class_exists(string className)
boolean method_exists(Obj, className)
string get_class(object Obj)
array get_class_method(className)
array get_class_vars(className)
24
Web Programming Php & MySQL - 2013
Sao chp i tng trong PHP
25
S dng
php
clone
Web Programming Php & MySQL - 2013
Ni dung
Khai bo lp
Khai bo i tng
Thuc tnh ca lp
Phng thc ca lp
Lp k tha
Lp o
26
Web Programming Php & MySQL - 2013
Lp k tha
S dng parent:: truy xut thuc tnh v phng thc ca
lp cha
Khng h tr
Overload phng thc, thuc tnh
Overload ton t
a k tha
27
class ClassName extends ParentClassName
{
scope $FieldName;
scope function funcName([parameters])
{
[return value;]
}
}
Web Programming Php & MySQL - 2013
Lp o
Khng to i tng t lp Abstract
Khng k tha c lp khc
28
abstract class ClassName
{
scope $FieldName;
scope function funcName([parameters])
{
[return value;]
}
}
Web Programming Php & MySQL - 2013 29

You might also like