Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 5 - Dương Khai Phong
lượt xem 13
download
Phần 4 trình bày về PHP và hướng đối tượng. Trong phần này sẽ cung cấp cho người học các nội dung cơ bản sau: Các vấn đề cơ bản hướng đối tượng trong PHP, lớp abstract và lớp interfaces, hàm include và require. Hy vọng bài giảng này sẽ giúp bạn nắm bắt được các kiến thức về lập trình PHP.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 5 - Dương Khai Phong
- • GVHD: Dương Khai Phong • Email: khaiphong@gmail.com • Website: http://khaiphong.tk http://course.uit.edu.vn
- 1/ Giới thiệu tổng quan Web 2/ Ngôn ngữ HTML và JavaScript 3/ Ngôn ngữ PHP căn bản 4/ Các đối tượng trong PHP 5/ PHP và hướng đối tượng 6/ PHP và cơ sở dữ liệu MySQL 7/ PHP và AJAX 8/ PHP và các hệ thống mã nguồn mở 9/ Triển khai ứng dụng PHP
- PHẦN 5:
- 1. Giới thiệu 2. Các vấn đề cơ bản hướng đối tượng trong PHP 3. Lớp abstract và lớp interfaces 4. Hàm include và require
- OOP (Object Orient Programming) revolves around the concept of grouping code and data together in logical units called classes. This process is usually referred to as encapsulation, or information hiding, since its goal is that of dividing an application into separate entities whose internal components can change without altering their external interfaces. (ref: page 132 of ebook “phparchitects Zend PHP 5 Certification Study Guide”) Programming techniques may include features such as abstraction, encapsulation, polymorphism, and inheritance.
- 1. Declaring a Class Cú pháp khai báo lớp: class { // Your code is here … } Ví dụ: class foo { const BAR = "Hello World"; } echo foo::BAR;
- 1. Declaring a Class Cú pháp khai báo lớp kế thừa: class a { function test(){ echo "a::test called";} function func(){echo "a::func called";} } class b extends a { function test(){echo "b::test called";} } class c extends b { function test(){parent::test();} } class d extends c { function test(){b::test();} } Cú pháp xác định lớp đối tượng: if ($obj instanceof MyClass) { echo "\$obj is an instance of MyClass"; }
- 1. Declaring a Class Cú pháp tạo đối tượng: 2. Instantiating an $myClassInstance = new myClass(); Object Lưu ý: các đối tượng trong PHP được sử dụng theo dạng tham chiếu Ví dụ: $myClassInstance = new myClass(); $copyInstance = $myClassInstance(); // Cả 2 biến $myInstance và $copyInstance cùng trỏ tới một đối tượng thuộc myClass. 0fx01 $myClassInstance myClass $copyInstance
- 1. Declaring a Class Phương thức và thuộc tính: 2. Instantiating an class myClass { Object function myFunction() { echo "You called myClass::myFunction"; } } // Access methods of class myClass $obj = new myClass(); $obj -> myFunction();
- 1. Declaring a Class Con trỏ $this: 2. Instantiating an class myClass { Object function myFunction($data) { echo "The value is $data"; } function callMyFunction($data) { // Call myFunction() $this->myFunction($data); } } $obj = new myClass(); $obj->callMyFunction(123);
- 1. Declaring a Class Cú pháp hàm khởi tạo: 2. Instantiating an class foo { Object function __construct() 3. Constructors { // PHP 5 new style constructor echo __METHOD__; } function foo() { // PHP 4 style constructor } } new foo();
- 1. Declaring a Class Cú pháp hàm hủy: 2. Instantiating an class foo { Object function __construct() 3. Constructors { 4. Destructors echo __METHOD__ . PHP_EOL; } function __destruct() { echo __METHOD__; } } new foo();
- 1. Declaring a Class Phạm vị truy cập: 2. Instantiating an Key Visibility Object public The resource can be accessed from any scope. 3. Constructors protected The resource can only be accessed from within 4. Destructors the class where it is defined and its descendants The resource can only be accessed from within 5. Visibility private the class where it is defined. The resource is accessible from any scope, but final cannot be overridden in descendant classes. Ví dụ:
- 1. Declaring a Class Ví dụ 1: kết quả của đoạn lệnh sau 2. Instantiating an class foo { Object public $foo = 'bar'; protected $baz = 'bat'; private $qux = 'bingo'; function __construct(){ 3. Constructors var_dump(get_object_vars($this)); } 4. Destructors } class bar extends foo { function __construct(){ 5. Visibility var_dump(get_object_vars($this)); } } new foo(); new bar();
- 1. Declaring a Class Ví dụ 2: kết quả của đoạn lệnh sau 2. Instantiating an class foo { Object public $foo = 'bar'; protected $baz = 'bat'; private $qux = 'bingo'; function __construct(){ 3. Constructors $this->foo="pig"; var_dump(get_object_vars($this)); echo ""; 4. Destructors } } class bar extends foo { 5. Visibility function __construct(){ var_dump(get_object_vars($this)); echo ""; } } new foo(); new bar();
- 1. Declaring a Class Ví dụ 2: kết quả của đoạn lệnh sau 2. Instantiating an class foo { Object public $foo = 'bar'; protected $baz = 'bat'; private $qux = 'bingo'; function __construct(){ 3. Constructors $this->foo="pig"; var_dump(get_object_vars($this)); 4. Destructors } } class bar extends foo { 5. Visibility function __construct(){ var_dump(get_object_vars($this)); } } new foo(); new bar();
- 1. Declaring a Class Ví dụ 3: kết quả của đoạn lệnh sau 2. Instantiating an class foo { Object public $foo = 'bar'; protected $baz = 'bat'; private $qux = 'bingo'; function __construct(){ 3. Constructors $this->foo="pig"; var_dump(get_object_vars($this)); 4. Destructors } } class bar extends foo { 5. Visibility function __construct(){ var_dump(get_object_vars($this)); } } new foo(); new bar();
- 1. Declaring a Class Ví dụ 3: kết quả của đoạn lệnh sau 2. Instantiating an class foo { Object public $foo = 'bar'; protected $baz = 'bat'; private $qux = 'bingo'; function __construct(){ 3. Constructors var_dump(get_object_vars($this)); echo ""; } 4. Destructors } class baz { function __construct() { 5. Visibility $foo = new foo(); var_dump(get_object_vars($foo)); echo ""; } } new foo(); new baz();
- 1. Declaring a Class Cú pháp khai báo biến và phương thức tĩnh: 2. Instantiating an class foo { Object static $bar = "bat"; // output: static public function baz(){ bat 3. Constructors echo "Hello World"; Hello world } } 4. Destructors echo foo::$bar.""; foo::baz(); 5. Visibility Cú pháp khai báo hằng trong lớp: 6. Constants, Static Methods and class foo { const BAR = "Hello World"; // output: Properties } Hello world echo foo::BAR;
- a. Giới thiệu Interface Go … Interface Chim và máy bay Animal Go có cùng interface Run Fly nhưng cách Fly thức hoạt động Swim của Fly là khác … nhau hoàn toàn Interface Run Transport …
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Phát triển ứng dụng Web – Web Programming: Chương 0 - ThS. Lương Trần Hy Hiến
20 p | 243 | 19
-
Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 2(1) - Dương Khai Phong
45 p | 132 | 17
-
Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 3 - Dương Khai Phong
60 p | 119 | 15
-
Bài giảng Phát triển ứng dụng Web – Web Programming: Chương 5 - ThS. Lương Trần Hy Hiến
0 p | 108 | 15
-
Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 2(2) - Dương Khai Phong
49 p | 131 | 14
-
Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 4 - Dương Khai Phong
50 p | 101 | 12
-
Bài giảng Phát triển ứng dụng cho các thiết bị di động: Phần 2
76 p | 27 | 12
-
Bài giảng Phát triển ứng dụng cho các thiết bị di động: Phần 1
123 p | 48 | 11
-
Bài giảng Phát triển ứng dụng web: Bài 3 - Lê Đình Thanh
42 p | 122 | 11
-
Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 1 - Dương Khai Phong
28 p | 136 | 10
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 7: Nguyên lý phát triển ứng dụng với Flutter
88 p | 23 | 8
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 8: Đánh giá hiệu năng ứng dụng đa nền tảng
66 p | 24 | 8
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 0: Giới thiệu về môn học
27 p | 32 | 7
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 2: Tổng quan về kiến trúc của di động
53 p | 20 | 7
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 3.2: Cross-Platform
17 p | 21 | 7
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 1: Tổng quan về phát triển ứng dụng di động
46 p | 30 | 6
-
Bài giảng Phát triển ứng dụng Web: Bài 6 - Nguyễn Hữu Thể
24 p | 43 | 4
-
Bài giảng Phát triển ứng dụng web: Chương 0 - Lê Đình Thanh
10 p | 15 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn