intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Phát triển ứng dụng Web bằng PHP: Phần 5 - Dương Khai Phong

Chia sẻ: Năm Tháng Tĩnh Lặng | Ngày: | Loại File: PDF | Số trang:49

102
lượt xem
13
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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.

Chủ đề:
Lưu

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

  1. • GVHD: Dương Khai Phong • Email: khaiphong@gmail.com • Website: http://khaiphong.tk http://course.uit.edu.vn
  2. 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
  3. PHẦN 5:
  4. 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
  5.  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.
  6. 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;
  7. 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"; }
  8. 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
  9. 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();
  10. 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);
  11. 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();
  12. 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();
  13. 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ụ:
  14. 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();
  15. 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();
  16. 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();
  17. 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();
  18. 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();
  19. 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;
  20. 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  …
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2