Skip to main content

SỐ 128A, Hồ Tùng Mậu, Mai Dịch, Cầu giấy, Hà Nội

Search form

Trang chủ
  • Trang chủ
  • Giới thiệu
    • Lịch sử hình thành
    • Thành tích tiêu biểu
    • Giảng viên
    • Cơ sở vật chất
  • Đào tạo dài hạn
  • Đào tạo ngắn hạn
    • Lập trình Frontend ReactJS
    • Lập trình Python
    • Lập trình Web PHP FullStack
    • Lập trình Android
    • Lập trình Java Web FullStack
    • Lập trình Front-End với Angular
    • Lập trình APPLICATION VỚI ASP.NET MVC WEB API
    • Lập trình ASP.NET CORE với Web API & Angular
    • Kiểm thử phần mềm Tester
  • Tin tức
    • Sự kiện
    • Tin đào tạo
  • Sinh viên
    • Sinh viên tiêu biểu
  • Thư viện
    • Tin lập trình
    • Tin đồ họa
    • Đồ án sinh viên
  • Quan hệ doanh nghiệp
    • Các doanh nghiệp liên kết
  • Liên hệ
  • Tuyển sinh 2022
Lập trình hướng đối tượng PHP (OOP) - Tìm hiểu về OOP trong PHP
  • Trang chủ
  • Thư viện
  • Tin lập trình
Lập trình hướng đối tượng PHP (OOP) - Tìm hiểu về OOP trong PHP
06 Mar

Lập trình hướng đối tượng PHP (OOP) - Tìm hiểu về OOP trong PHP

By t3h 0 Comments

PHP là một ngôn ngữ kịch bản phía máy chủ, chủ yếu được sử dụng để phát triển web nhưng cũng được sử dụng như một ngôn ngữ lập trình có mục đích chung. Lập trình hướng đối tượng (PHP OOP), là một loại nguyên tắc ngôn ngữ lập trình được thêm vào php5, giúp xây dựng các ứng dụng web phức tạp, có thể tái sử dụng. Bài viết dưới đây sẽ giúp bạn tìm hiểu về lập trình hướng đối tượng trong PHP.

 

Lập trình hướng đối tượng trong PHP

Tìm hiểu về lập trình hướng đối tượng trong PHP

Các khái niệm lập trình hướng đối tượng trong PHP

Trước khi đi vào chi tiết, hãy xác định các thuật ngữ quan trọng liên quan đến Lập trình hướng đối tượng.

Lập trình hướng đối tượng trong PHP - Tìm hiểu về lập tình hướng đối tượng trong PHP

Các khái niệm cơ bản trong lập trình hướng đối tượng

Khái niệm: Lớp, đối tượng biến, hàm thành viên

Lớp - Đây là kiểu dữ liệu do người lập trình xác định, bao gồm các hàm cục bộ cũng như dữ liệu cục bộ. Bạn có thể coi một lớp như một khuôn mẫu để tạo ra nhiều thể hiện của cùng một loại (hoặc lớp) đối tượng.

Đối tượng - Một thể hiện riêng lẻ của cấu trúc dữ liệu được xác định bởi một lớp. Bạn xác định một lớp một lần và sau đó tạo nhiều đối tượng thuộc về nó. Đối tượng còn được gọi là thể hiện.

Biến thành viên - Đây là các biến được định nghĩa bên trong một lớp. Dữ liệu này sẽ vô hình đối với bên ngoài lớp và có thể được truy cập thông qua các hàm thành viên. Các biến này được gọi là thuộc tính của đối tượng khi một đối tượng được tạo.

Hàm thành viên - Đây là những hàm được định nghĩa bên trong một lớp và được sử dụng để truy cập dữ liệu đối tượng.

>>> Đọc thêm: Tại sao nên sử dụng PHP - Lợi ích của việc sử dụng PHP

Khái  niệm: Kế thừa, lớp cha, lớp con, đa hình

Kế thừa - Khi một lớp được định nghĩa bằng cách kế thừa chức năng hiện có của một lớp cha thì nó được gọi là kế thừa. Ở đây lớp con sẽ kế thừa tất cả hoặc một vài hàm thành viên và các biến của một lớp cha.

Lớp cha - Một lớp được kế thừa từ một lớp khác. Đây còn được gọi là lớp cơ sở hoặc siêu lớp.

Lớp con - Lớp kế thừa từ lớp khác. Đây còn được gọi là lớp con hoặc lớp dẫn xuất.

Đa hình - Đây là một khái niệm hướng đối tượng trong đó cùng một chức năng có thể được sử dụng cho các mục đích khác nhau. Ví dụ: tên hàm sẽ giữ nguyên nhưng nó có số lượng đối số khác nhau và có thể thực hiện các tác vụ khác nhau.

Khái niệm: nạp chồng, trừu tượng hóa dữ liệu, encapsulation, bộ hủy

Nạp chồng - một kiểu đa hình trong đó một số hoặc tất cả các toán tử có các cách triển khai khác nhau tùy thuộc vào loại đối số của chúng. Tương tự, các chức năng cũng có thể được nạp chồng với các cách triển khai khác nhau.

Trừu tượng hóa dữ liệu - Bất kỳ biểu diễn dữ liệu nào trong đó chi tiết triển khai được ẩn (trừu tượng hóa).

Encapsulation - đề cập đến một khái niệm trong đó chúng ta đóng gói tất cả dữ liệu và các hàm thành viên lại với nhau để tạo thành một đối tượng.

Constructor - dùng để chỉ một loại đặc biệt của chức năng đó sẽ được gọi tự động bất cứ khi nào có một hình tượng từ một lớp học.

Bộ hủy - đề cập đến một loại chức năng đặc biệt sẽ được gọi tự động bất cứ khi nào một đối tượng bị xóa hoặc ra khỏi phạm vi.

Các định nghĩa chi tiết trong lập trình hướng đối tượng PHP

Lớp và đối tượng trong lập trình hướng đối tượng trong PHP

Một đối tượng trong PHP là một thể hiện riêng lẻ của cấu trúc dữ liệu được định nghĩa bởi một lớp. Chúng ta có thể xác định một lớp trong một lần và sau đó tạo nhiều đối tượng thuộc về nó. Đối tượng còn được gọi là instance.

  • Lớp là một kiểu dữ liệu do người lập trình xác định, bao gồm các phương thức cục bộ và các biến cục bộ.
  • Lớp là một tập hợp các đối tượng. Đối tượng có thuộc tính và hành vi.
  • Đầu tiên, chúng ta phải xác định một lớp php, trong đó tên lớp phải giống với tên tệp.

Ví dụ về một lớp:

class Books {

   // Members of class Books

}

// Creating three objects of Books

$physics = new Books;

$maths = new Books;

$chemistry = new Books;

>>> Tham khảo: Khóa học lập trình PHP

Hàm thành viên lập trình hướng đối tượng PHP

Sau khi tạo các đối tượng của mình, bạn sẽ có thể gọi các hàm thành viên liên quan đến đối tượng đó. Một hàm thành viên sẽ chỉ có thể xử lý biến thành viên của đối tượng liên quan.

Ví dụ sau đây cho thấy cách đặt tiêu đề và giá cho ba cuốn sách bằng cách gọi các hàm thành viên.

$physics->setTitle( "Physics for High School" );

$chemistry->setTitle( "Advanced Chemistry" );

$maths->setTitle( "Algebra" );

$physics->setPrice( 10 );

$chemistry->setPrice( 15 );

$maths->setPrice( 7 );

Bây giờ bạn gọi các hàm thành viên khác để nhận các giá trị được đặt trong ví dụ trên -

$physics->getTitle();

$chemistry->getTitle();

$maths->getTitle();

$physics->getPrice();

$chemistry->getPrice();

$maths->getPrice();

Điều này sẽ tạo ra kết quả sau:

Physics for High School

Advanced Chemistry

Algebra

10

15

7

Tính kế thừa trong PHP  lập trình hướng đối tượng PHP

Các định nghĩa về lớp trong PHP có thể thừa kế tùy chọn từ một lớp cha bằng cách sử dụng câu lệnh expand. Cú pháp như sau:

class Child extends Parent {

   <definition body>

}

Hiệu quả của việc kế thừa là lớp con có các đặc điểm như sau:

  • Tự động có tất cả biến khai báo thành viên của lớp cha
  • Tự động có tất cả hàm thành viên như lớp cha, chúng cũng sẽ hoạt động tương tự như với lớp cha

Ví dụ dưới đây sẽ thừa kế lớp mang tên Books và thêm nhiều hàm hơn theo yêu cầu:

class Novel extends Books {

   var $publisher;

   

   function setPublisher($par){

      $this->publisher = $par;

   }

   function getPublisher(){

      echo $this->publisher. "<br />";

   }

}

Bây giờ ngoài hàm kế thừa, lớp Novel còn giữ thêm hai hàm bổ sung bên dưới.

Hàm ghi đè trong PHP  lập trình hướng đối tượng PHP

Các định nghĩa hàm trong các lớp con ghi đè các định nghĩa có cùng tên trong các lớp cha. Trong một lớp con, chúng ta có thể sửa đổi định nghĩa của một hàm được kế thừa từ lớp cha.

Trong ví dụ sau, các hàm getPrice và getTitle được ghi đè để trả về một số giá trị như sau:

function getPrice() {

   echo $this->price . "<br/>";

   return $this->price;

} 

function getTitle(){

   echo $this->title . "<br/>";

   return $this->title;

}

Hằng số lập trình hướng đối tượng PHP

Một hằng số tương đối giống một biến, ở chỗ nó giữ một giá trị, nhưng thực sự giống một hàm hơn vì một hằng số là bất biến. Khi bạn khai báo một hằng số, nó không thay đổi.

Khai báo một hằng số rất dễ dàng, như được thực hiện trong phiên bản MyClass này:

class MyClass {

   const requiredMargin = 1.7;

   function __construct($incomingValue) {

      // Statements here run every time

      // an instance of the class

      // is created.

   }

}

Trong lớp này, RequiredMargin là một hằng số. Nó được khai báo với từ khóa const, và trong mọi trường hợp, nó không thể được thay đổi thành bất kỳ thứ nào khác. Lưu ý tên của hằng số không bắt đầu bằng ký hiệu $ như tên biến.

Kết luận: Bài viết trên đã giới thiệu về lập trình hướng đối tượng PHP cũng các khái niệm và ví dụ về các thành phần trong lập trình với PHP. Hy vọng bạn có thể nắm rõ các kiến thức này và áp dụng trong quá trình làm việc. Tìm hiểu thêm về lập trình PHP và các ngôn ngữ lập trình khác qua các khóa học lập trình tại T3H.

  • t3h's blog
Chúc mừng sinh viên T3H - Trịnh Tiến Anh K35 đạt thành tích học tập xuất sắc khoa CNTT hệ Đại Học năm học 2021-2022
Nov 08,2022
SINH VIÊN K33 T3H THÀNH CÔNG BẢO VỆ ĐỒ ÁN 3D NỘI THẤT
Sep 27,2022
Câu lạc bộ tình nguyện T3H WAY lan tỏa tình yêu thương bằng những chiếc bánh Trung thu
Sep 27,2022
Sinh viên Viện CNTT T3H nhảy flashmob chào mừng kỷ niệm 77 năm Quốc Khánh 2/9 (1945-2022) và năm học mới
Sep 08,2022
HỌP TỔ CHUYÊN MÔN LẬP TRÌNH DÀI HẠN
May 28,2022
VIỆN CÔNG NGHỆ THÔNG TIN T3H VÀ TRƯỜNG CAO ĐẲNG KỸ THUẬT - MỸ NGHỆ VIỆT NAM TỔ CHỨC LỄ KÝ KẾT HỢP TÁC CHIẾN LƯỢC ĐÀO TẠO NHÂN LỰC NGÀNH CNTT CHẤT LƯỢNG CAO
May 19,2022
T3H ĐỒNG HÀNH CÙNG DIRECTION TRONG CHUỖI SỰ KIÊN LAYERS 5
Mar 28,2022
VIỆN CÔNG NGHỆ THÔNG TIN T3H ĐỒNG HÀNH CÙNG TÂN SINH VIÊN VỚI CHƯƠNG TRÌNH MÁY TÍNH CHO EM
Sep 28,2021
HỌC VIÊN T3H TỰ TIN BẢO VỆ ĐỒ ÁN CUỐI KHÓA TRƯỚC DOANH NGHIỆP
Sep 18,2021
Lập trình Frontend ReactJS
Lập trình ASP.NET CORE với Web API & Angular
Khóa học lập trình Python
Khóa học Lập trình Python Django Fullstack
Lập trình Front-End với Angular
Lập trình Web application với ASP.NET MVC Web API
Khóa học kiểm thử phần mềm Tester
Lập trình Java Web FullStack
Lập trình Web PHP FullStack
Lập trình ứng dụng mobile android
Lập trình Android

T3h đã cho tôi những trải nghiệm mới mẻ, đặc biệt là giúp tôi được thử thách và chứng tỏ bản thân mình. Nếu được chọn lại, tôi chắc chắn vẫn sẽ chọn là sinh viên T3h!!!

(Sinh viên lớp: K28DH) 

Lê Hồng Nhung
Designer - Công ty công nghệ Lê Nam

Môi trường năng động, các bạn sinh viên nhiệt tình. Không có nhiều khoảng cách giữa sinh viên và giảng viên

(Sinh viên lớp: K28DH) 

Lê Duy Ngọc
Developer .Net - Tập đoàn Đại Việt

Môi trường học tập tốt, một số thầy cô giáo giảng dạy rất có tâm, nhiệt tình với sinh viên. Sinh viên sau khi hoàn thành khóa học cũng dễ dàng tìm kiếm được công việc phù hợp.

(Sinh viên lớp: K29C _ DH1507) 

Đỗ Thị Hải Hậu
Phụ trách Model 3D - Công ty GDL

T3H là một mái trường rất đáng yêu, bạn bè đáng yêu, đến thầy cô cũng đang yêu nốt

(Sinh viên lớp: K29A1_DH1507) 

Phan Tiến Dũng
Designer - Công ty Hatch

Thật may mắn khi thầy cô giáo, anh chị Hội Sinh viên rất nhiệt tình, giúp đỡ chúng mình. T3H như là ngôi nhà thứ 2 của mình vậy đó. 

(Sinh viên lớp: K29A_DH1507) 

Nguyễn Thị Phương Thủy
Designer - Công ty tranh 3D

T3H thật sự là 1 gia đình, mọi người đều sẵn sàng dậy cho nhau 1 điều gì đó, một môi trường mà mọi người đều sẵn sàng chia sẻ và học hỏi lẫn nhau (Sinh viên lớp: K29A1_DH1507) 

Lê Trung Kiên
Trưởng ban thiết kế - Công ty Skynetone Việt Nam

Một môi trường hoàn toàn năng động và có ứng dụng thực tế hơn rất nhiều ngôi trường khác.       (Sinh viên lớp: K29A_DH1507)

Nguyễn Thị Bích Thảo
Chuyên viên diễn hoạt Animation - Công ty CP Global Dream Lad – Tổ chức giáo dục Hoa Kỳ.

T3H là nơi tôi được sống trọn với những đam mê, những sở thích, là nơi tôi có thể khám phá được những khả năng của bản thân. Tất cả là nhờ sự tận tâm, tận tình từ các thầy cô, anh chị, bạn bè. T3H đã thực sự trở thành mái nhà thứ 2 của tôi!!!

Nguyễn Mạnh Tiền
Cán bộ phòng Đào tạo Hitech Việt Nam

Đề tài Project java android xuất xắc, sinh viên tiêu biểu T3H - Framgia Vietnam nhận ngay trong hội đồng bảo vệ đồ án cuối khóa

Phạm Trung Đoan
FPT Software, Framgia Vietnam

"Tôi học ở T3h với những thầy cô nhiệt tình , quan tâm lo lắng cho Sinh viên. Môi trường năng động, bạn bè hòa đồng vui vẻ. Các bạn hãy đến với T3H Hà Nội để trải nghiệm nhé"

NGUYỄN VĂN DŨNG
Lớp K30A1DH

"Dẫu tưởng rằng T3h sẽ giống những trường đại học khác, khô khan và chỉ biết đến bản thân. Nhưng không khi đến đây và học tập rồi hoạt động em mới hiểu tại sao lại gọi là T3h family', những chiến binh hết mình với học tập"

Nguyễn Thảo Quỳnh
K29A1-DH1507

"Kiến thức, những người bạn lầy lội, những giảng vui tính là thứ mà tôi có được tại T3H. Nơi đây chính là cây cầu nối giữa tôi với niềm đam mê của mình về CNTT"

Nguyễn Tiến Tân
K30A4DH

"Môi trường học năng động trẻ chung, giáo viên rất nhiệt tình hướng dẫn, support đồ án cho sinh viên"

Nguyễn Minh Lân
K30A3DH

 "Khi học tập ở T3H, tôi đã bổ sung cho mình được rất nhiều kiến thức để vận dụng công việc tốt hơn và định hướng được nghề nghiệp. Giảng viên rất nhiệt tình, nhiều kinh nghiệm, giúp đỡ tôi rất nhiều trong quá trình học. Cảm ơn T3H" 

PHẠM TRUNG ĐOAN
Làm việc tại Samsung Electronic Việt Nam

"Thầy cô giảng viên và anh chị khóa trên rất thân thiện và tận tâm. Họ sẵn sàng, khi bạn cần giúp về vấn đề kĩ thuật hay học tập của bạn. Đây là điều em thích nhất ở T3H"

Đỗ Quang Linh
K30A3DH

T3H là ngôi nhà thứ hai của tôi, môi trường thoải mái, bạn bè thân thiện, thầy cô tâm huyết. Nơi đây đã cho tôi nhiêu bài học quý giá, nhiều kỉ niệm đẹp. Cám ơn T3H, tình yêu tuổi trẻ của tôi!.

VŨ THỊ QUỲNH
Designer tại Hitech Việt Nam

Nơi tôi cảm nhận được sự yêu thương, nhiệt huyết của các thầy cô. Nơi đã cho tôi cơ hội được phát triển, nơi giúp tôi trường thành, nơi cho tôi cuộc sống và sự nghiệp như ngày hôm nay.

Nguyễn Văn Thành
Designer tại Topica Edtech Group

Môi trường học tập thoải mái, thầy cô dễ gần, dễ tiếp xúc, kiến thức sát với thực tế. Nhà trường luôn luôn tạo nhiều điều kiện cho sinh viên phát triển!

Doãn Trọng Tài
TP Công nghệ cty D&D Việt Nam

Thầy cô nhiệt tình và tâm huyết với sinh viên. Các anh chị sinh viên có tinh thần giúp đỡ các em khóa dưới. Môi trường thoải mái, và cho sinh viên cơ hội phát triển.

Trần Thị Hoa
Hội sinh viên T3H

T3H nơi tôi cảm nhận được sự gần gũi, thân thương, là cái nôi đã giúp tôi trưởng thành như ngày hôm nay. Từ một sinh viên "KHÔNG BIẾT GÌ" về đồ họa, giờ tôi có thể tự tin mà nói rằng : I AM A PROFESSIONAL DESIGNER với công việc và mức lương tôi hằng mơ ước!

Phạm Ánh Duyên
Designer of HONG HA PRINTING .,JSC

"Trường luôn tạo điều kiện học tập tốt nhất cho sinh viên, các giảng viên thì nhiệt tình, tận tâm với sinh viên, hỗ trợ sinh viên hết mình! Ngoài việc học trên trường, hội sinh viên còn tổ chức ra nhiều chương trình, nhiều sự kiện để khuấy động phong trào trong sinh viên"

Nguyễn Thị Thu Hà
Thiết kế 2D - Công ty CP BĐS Rbland

T3H là nơi tôi được sống trọn với những đam mê, những sở thích, là nơi tôi có thể khám phá được những khả năng của bản thân. Tất cả là nhờ sự tận tâm, tận tình từ các thầy cô, anh chị, bạn bè. T3H đã thực sự trở thành mái nhà thứ 2 của tôi!!!

Nguyễn Mạnh Tiền
Cán bộ phòng Đào tạo Hitech Việt Nam

Đề tài Project java android xuất xắc, sinh viên tiêu biểu T3H - Framgia Vietnam nhận ngay trong hội đồng bảo vệ đồ án cuối khóa

Phạm Trung Đoan
FPT Software, Framgia Vietnam

Thầy cô giảng viên và anh chị khóa trên rất thân thiện và tận tâm. Họ sẵn sàng, khi bạn cần giúp về vấn đề kĩ thuật hay học tập của bạn. Đây là điều em yêu hích nhất ở T3H"

Lê Trung Kiên
K29DH

"T3H là một môi trường giáo dục thực tế nhất mà em từng biết. Đã đào tạo thẳng vào chuyên ngành giúp cho sinh viên phát huy được hết các khả năng về chuyên ngành của mình"

Phạm Hồng Hà
K30A1DH
  • Chúc mừng sinh viên T3H - Trịnh Tiến Anh K35 đạt thành tích học tập xuất sắc khoa CNTT hệ Đại Học năm học 2021-2022
    Nov 08,2022
  • SINH VIÊN K33 T3H THÀNH CÔNG BẢO VỆ ĐỒ ÁN 3D NỘI THẤT
    Sep 27,2022
  • Câu lạc bộ tình nguyện T3H WAY lan tỏa tình yêu thương bằng những chiếc bánh Trung thu
    Sep 27,2022
  • Sinh viên Viện CNTT T3H nhảy flashmob chào mừng kỷ niệm 77 năm Quốc Khánh 2/9 (1945-2022) và năm học mới
    Sep 08,2022
  • HỌP TỔ CHUYÊN MÔN LẬP TRÌNH DÀI HẠN
    May 28,2022

VIỆN CÔNG NGHỆ THÔNG TIN T3H

Tầng 05 - Nhà A - Trường Cán bộ quản lý văn hóa thể thao và du lịch

128A - Hồ Tùng Mậu - Mai Dịch - Cầu Giấy - Hà Nội

Trụ sở: Số nhà 55, ngõ 97/24/1 đường Văn Cao, Liễu Giai, Ba Đình, Hà Nội

 

  • GIỚI THIỆU
  • Viện Công nghệ thông tin T3H
  • Tại sao chọn T3H
  • Hỏi đáp

ĐÀO TẠO FULLSTACK

Web PHP Fullstack

Java Web Fullstack

Python Django

ASP.Net MVC web API  

FONTEND - MOBILE -TESTER

Frontend ReactJS

Frontend Angular

Java/Kotlin Android

Kiểm thử phần mềm

LIÊN HỆ

THPT: 0966 095 680 (Miss Ngân)

Sinh viên Đại học - Đi làm: 0972.056.536 (Mrs Phượng)

Copyright © 2021 t3h.edu.vn. All rights reserved.