PHP The First Lesson - Chương 2
Số trang: 42
Loại file: pdf
Dung lượng: 349.12 KB
Lượt xem: 16
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Lập trình hướng ñối tượng trong PHP Các phương thức truyền dữ liệu trong PHP Các khái niệm nâng cao Các lớp ñượ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òn các phương thức ñược khai báo dưới dạng các hàm class tên_l p { //danh_sách_các bi n, h ng, l p //danh_sách_các_hàm } Khởi tạo một ñối tượng thuộc một lớp với từ khóa new $tên_ñ i_tư ng = new tên_l p(); Để gọi hàm (biến) trong lớp, sử dụng toán tử - $tên_ñ i_tư ng-tên_hàm(); $tên_ñ i_tư ng-tên_bi...
Nội dung trích xuất từ tài liệu:
PHP The First Lesson - Chương 2PHP The Second Lesson Hanoi University of Science and Technology (hust.vn) Chương 2: Làm quen v i PHP (ti p)Lập trình hướng ñối tượng trong PHPCác phương thức truyền dữ liệu trong PHPCác khái niệm nâng caoL p trình hư ng đ i tư ng trong PHP Khai báo và th hi n l p trong PHPCác lớp ñược khai báo thông qua từ khóa class, cácthuộc tính khai báo dưới dạng các biến còn cácphương thức ñược khai báo dưới dạng các hàmclass tên_l p {//danh_sách_các bi n, h ng, l p//danh_sách_các_hàm} (ti p)Khởi tạo một ñối tượng thuộc một lớp với từ khóanew$tên_ñ i_tư ng = new tên_l p();Để gọi hàm (biến) trong lớp, sử dụng toán tử ->$tên_ñ i_tư ng->tên_hàm();$tên_ñ i_tư ng->tên_bi n;Hoặc dùng toán tử :: ñể gọi ñến một hàm haymộ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; Hàm t đ ng g i __autoloadTrong trường hợp chúng ta sử dụng một lớp chưañược ñịnh nghĩa thì hàm autoload sẽ tự ñộngñược gọi.function __autoload($class_name){ require_once $class_name.’.php’;}Điều này là chưa từng có trong các phiên bảnPHP trước ñây, chỉ từ PHP 5.x mới có tính năngnày. Hàm t o __constructCho phép bạn khai báo hàm tạo theo phươngthức mớiclass A{ function __construct(){ //dòng l nh }}Nếu không tìm thấy hàm tạo theo phương thứcmới này, PHP sẽ tìm hàm tạo trong số các hàmcủa lớp với tên hàm trùng với tên lớp (cách cũ). Hàm h y __destructNgược lại với hàm tạo, hàm hủy ñược triệu gọikhi ñối tượng bị hủyĐược gọi trong hai tình huống– Trong lúc thực thi mã lệnh, khi mà tất cả các liên quan ñến ñối tượng bị không còn nữa.– Hoặc khi ñến cuối cùng của mã lệnh và PHP kết thúc các truy vấn.function __destruct(){}$tên_ñối_tượng = NULL; Truy c p phương th c và thu c tính s d ng con tr $this Public, protected, private với các thuộc tính – 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 $thisclass A { public $a = “public_member”; function printHello() { print “Xin chao”; } function test() { print $this->a; print $this->printHello(); }} (ti p)– 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 ñó.class A { protected $a = “protected_member”; function printHello() { print $this->a; }}class B extends class A { protected $a = “new protected_member”; function subprintHello() { print $this->a; }} (ti p)– Private: chỉ có thể ñược truy xuất từ bên trong lớp ñó, cũng sử dụng con trỏ $this như protectedclass A { private $a = “private_member”; function printHello() { print $this->a; }} (ti p) Public, protected, private với các phương thức – Cũng tương tự như với các thuộc tính với các ñịnh nghĩa và ràng buộc cho các kiểu public, protected và private – Cách khai báo cũng tương tự như khai báo các thuộc tínhclass A { public function printHello() { }} StaticBiế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ỏ thisclass A {static $a = 5;function printHello(){ print self::$a;}}print A::$a++;//6A::printHello();//5 (ti p) 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àmclass A { static function printHello() { print “Xin chao”; } function show () { self::printHello();//ho c $this->printHello(); }}A::printHello();//A::show(); s l i khi dùng $this$obj = new A();$obj->show();//ho c $obj->printHello(); (ti p)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à -> H ng s trong l p Có thể ñịnh nghĩa hằng trên một lớp Nó 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 quả của 1 phép ...
Nội dung trích xuất từ tài liệu:
PHP The First Lesson - Chương 2PHP The Second Lesson Hanoi University of Science and Technology (hust.vn) Chương 2: Làm quen v i PHP (ti p)Lập trình hướng ñối tượng trong PHPCác phương thức truyền dữ liệu trong PHPCác khái niệm nâng caoL p trình hư ng đ i tư ng trong PHP Khai báo và th hi n l p trong PHPCác lớp ñược khai báo thông qua từ khóa class, cácthuộc tính khai báo dưới dạng các biến còn cácphương thức ñược khai báo dưới dạng các hàmclass tên_l p {//danh_sách_các bi n, h ng, l p//danh_sách_các_hàm} (ti p)Khởi tạo một ñối tượng thuộc một lớp với từ khóanew$tên_ñ i_tư ng = new tên_l p();Để gọi hàm (biến) trong lớp, sử dụng toán tử ->$tên_ñ i_tư ng->tên_hàm();$tên_ñ i_tư ng->tên_bi n;Hoặc dùng toán tử :: ñể gọi ñến một hàm haymộ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; Hàm t đ ng g i __autoloadTrong trường hợp chúng ta sử dụng một lớp chưañược ñịnh nghĩa thì hàm autoload sẽ tự ñộngñược gọi.function __autoload($class_name){ require_once $class_name.’.php’;}Điều này là chưa từng có trong các phiên bảnPHP trước ñây, chỉ từ PHP 5.x mới có tính năngnày. Hàm t o __constructCho phép bạn khai báo hàm tạo theo phươngthức mớiclass A{ function __construct(){ //dòng l nh }}Nếu không tìm thấy hàm tạo theo phương thứcmới này, PHP sẽ tìm hàm tạo trong số các hàmcủa lớp với tên hàm trùng với tên lớp (cách cũ). Hàm h y __destructNgược lại với hàm tạo, hàm hủy ñược triệu gọikhi ñối tượng bị hủyĐược gọi trong hai tình huống– Trong lúc thực thi mã lệnh, khi mà tất cả các liên quan ñến ñối tượng bị không còn nữa.– Hoặc khi ñến cuối cùng của mã lệnh và PHP kết thúc các truy vấn.function __destruct(){}$tên_ñối_tượng = NULL; Truy c p phương th c và thu c tính s d ng con tr $this Public, protected, private với các thuộc tính – 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 $thisclass A { public $a = “public_member”; function printHello() { print “Xin chao”; } function test() { print $this->a; print $this->printHello(); }} (ti p)– 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 ñó.class A { protected $a = “protected_member”; function printHello() { print $this->a; }}class B extends class A { protected $a = “new protected_member”; function subprintHello() { print $this->a; }} (ti p)– Private: chỉ có thể ñược truy xuất từ bên trong lớp ñó, cũng sử dụng con trỏ $this như protectedclass A { private $a = “private_member”; function printHello() { print $this->a; }} (ti p) Public, protected, private với các phương thức – Cũng tương tự như với các thuộc tính với các ñịnh nghĩa và ràng buộc cho các kiểu public, protected và private – Cách khai báo cũng tương tự như khai báo các thuộc tínhclass A { public function printHello() { }} StaticBiế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ỏ thisclass A {static $a = 5;function printHello(){ print self::$a;}}print A::$a++;//6A::printHello();//5 (ti p) 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àmclass A { static function printHello() { print “Xin chao”; } function show () { self::printHello();//ho c $this->printHello(); }}A::printHello();//A::show(); s l i khi dùng $this$obj = new A();$obj->show();//ho c $obj->printHello(); (ti p)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à -> H ng s trong l p Có thể ñịnh nghĩa hằng trên một lớp Nó 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 quả của 1 phép ...
Tìm kiếm theo từ khóa liên quan:
Lập trình ứng dụng Web PHP Framework lập trình căn bản lập trình PHP mã nguồn mở ứng dụng joomlaTài liệu liên quan:
-
Đề tài nguyên lý hệ điều hành: Nghiên cứu tìm hiểu về bộ nhớ ngoài trong hệ điều hành Linux
19 trang 246 0 0 -
114 trang 243 2 0
-
80 trang 222 0 0
-
Xây dựng công cụ nhận dạng khuôn mặt theo thời gian thực hiện trên nền hệ điều hành mã nguồn mỡ
7 trang 212 0 0 -
Giáo trình Lập trình C căn bản - HanoiAptech Computer Education Center
136 trang 134 0 0 -
[Thảo luận] Học PHP như thế nào khi bạn chưa biết gì về lập trình?
5 trang 131 0 0 -
124 trang 113 3 0
-
7 trang 85 0 0
-
87 trang 80 0 0
-
8 trang 79 0 0
-
Bài giảng Mã nguồn mở: Bài 3 - ThS. Phan Thanh Toàn
29 trang 76 0 0 -
Câu hỏi ôn tập trắc nghiệm Hệ điều hành Linux
15 trang 70 0 0 -
81 trang 68 0 0
-
Bài giảng Mã nguồn mở: Bài 1 - ThS. Phan Thanh Toàn
25 trang 60 0 0 -
72 trang 50 1 0
-
Tạo mạng xã hội với PHP - part 43
10 trang 45 0 0 -
Xây dựng SLD của dữ liệu không gian cho webGIS mã nguồn mở bằng CSS trong GeoServer
6 trang 44 0 0 -
Giáo trình môn học/mô đun: Lập trình web với ASP.NET: Phần 2
42 trang 39 0 0 -
109 trang 37 0 0
-
Một số giải pháp lập trình ASP.NET 2.0
82 trang 37 0 0