Thuộc tính lớp PHP là gì?

Bạn có thể tìm thấy thông tin chi tiết về các từ khóa liên quan như final và instanceof cùng với mức độ liên quan của chúng trong PHP và nhiều thông tin quan trọng hơn về các lớp. Bài viết dựa trên chuyên gia này đóng vai trò như một núi kiến ​​thức về các lớp học mà bạn có thể khám phá bên dưới

nội dung

  • Các lớp trong PHP là gì
  • Làm cách nào để xác định một lớp PHP?
    • – Cài đặt và nhận thuộc tính
    • – Những từ dành riêng là gì?
  • Vai trò của một lớp PHP trong kế thừa
    • – Công cụ sửa đổi quyền truy cập được bảo vệ trong Kế thừa
    • – Làm cách nào để ghi đè các phương thức được kế thừa?
  • Sử dụng từ khóa cuối cùng
  • Các lớp trừu tượng và các phương thức của chúng
    • – Ví dụ về kế thừa các lớp con từ các lớp trừu tượng
  • Làm cách nào để xác định một đối tượng trong một lớp PHP?
  • Tầm quan trọng của từ khóa $this và instanceof
  • Vai trò của từ khóa mới
    • – Những điều quan trọng cần lưu ý về từ khóa mới
  • Đối tượng và biến mới
  • Cơ chế nhân bản đối tượng
    • – Cách sử dụng nhân bản đối tượng
  • Vai trò của từ khóa mở rộng trong Lớp PHP
    • – Ghi đè các phương thức, hằng số và thuộc tính được kế thừa
  • Các. lớp từ khóa
  • Làm cách nào để Tự động tải các tệp của một lớp PHP?
  • Một chức năng quan trọng trong Autoloading
    • – Nhiều chức năng tự động tải trong một lớp PHP
  • Sự kết luận

Các lớp trong PHP là gì

Các lớp là các mẫu cho các đối tượng trong PHP và các đối tượng đó là các thể hiện của các lớp. Một lớp có thể đại diện cho bất kỳ thứ gì cụ thể có các thuộc tính nhất định. Bạn có thể lấy một ví dụ về Rau như một lớp. Lớp này có thể sở hữu các thuộc tính như màu sắc, tên và trọng lượng

Trong ví dụ này, các biến như $color, $name và $weight có thể được định nghĩa để có thể giữ giá trị của các thuộc tính đó. Nếu bạn có ý định tạo các đối tượng riêng lẻ như hành tây và khoai tây, chúng sẽ kế thừa tất cả các hành vi và thuộc tính từ lớp Rau. Tuy nhiên, bạn phải nhớ rằng các đối tượng đó sẽ có các giá trị khác nhau cho các thuộc tính đó

Làm cách nào để xác định một lớp PHP?

Cách thông thường để định nghĩa các lớp trong PHP bắt đầu bằng việc đặt lớp làm từ khóa. Từ khóa sẽ được theo sau bởi tên của lớp đó và cặp dấu ngoặc nhọn. Các dấu ngoặc nhọn này sẽ bao quanh các phương thức và thuộc tính được xác định thuộc về lớp đó, ví dụ như thế này

lớp Rau  {
}

Bạn có thể đặt bất kỳ nhãn hợp lệ nào cho tên lớp nhưng bạn phải đảm bảo rằng đó không phải là một trong những từ dành riêng trong PHP. Bắt đầu tên sẽ có dấu gạch dưới hoặc chữ cái. Nó sẽ được theo sau bởi số lượng số, chữ cái hoặc dấu gạch dưới mong muốn của bạn

– Cài đặt và nhận thuộc tính

Bạn phải nhớ rằng việc thiết lập và nhận các thuộc tính của một lớp là cần thiết trước khi nó được khai báo. Để làm điều đó, set_name() là một phương thức có thể được sử dụng để đặt thuộc tính $color làm ví dụ.

Tương tự như vậy, get_name() là một phương thức khác có thể lấy thuộc tính $color như một phần của ví dụ đó. Bạn có thể đặt tên các biến của lớp đó là thuộc tính và các hàm là phương thức.

– Những từ dành riêng là gì?

Các từ dành riêng là một tập hợp các từ khóa riêng biệt trong PHP. Những từ khóa này không thể được sử dụng làm tên cho các lớp, chức năng và phương thức. Trong các chế độ trước của PHP, bạn thậm chí không thể sử dụng các từ dành riêng này để đặt tên cho các thuộc tính của các lớp

Vai trò của một lớp PHP trong kế thừa

Quá trình lấy một lớp từ một lớp khác được gọi là kế thừa trong PHP. Là một phần của thừa kế, mọi phương thức và thuộc tính được bảo vệ và công khai của lớp cha được kế thừa cho lớp con. Hơn nữa, lớp con có thể có các phương thức và thuộc tính của riêng nó. Có một từ khóa được gọi là phần mở rộng có thể được sử dụng để định nghĩa một lớp kế thừa

Giống như ví dụ trước của chúng ta, bạn có thể kế thừa lớp Carrot từ lớp Rau. Bằng cách này, bạn có thể suy luận rằng các thuộc tính $color và $name công khai có thể được sử dụng bởi lớp Carrot đó. Ngoài ra, nó cũng có thể sử dụng công khai intro()__construct() methods from the Vegetable class due to inheritance.

– Công cụ sửa đổi quyền truy cập được bảo vệ trong Kế thừa

Tiếp tục, bạn có thể thử gọi một phương thức được bảo vệ từ bên ngoài lớp học của mình. Bạn sẽ nhận thấy rằng đã nhận được lỗi mặc dù các phương thức công khai sẽ hoạt động bình thường. Điều này có nghĩa là bạn sẽ phải gọi phương thức được bảo vệ đó từ bên trong lớp đã được dẫn xuất. Điều này sẽ đảm bảo rằng mã hoạt động hoàn hảo với công cụ sửa đổi quyền truy cập được bảo vệ

– Làm cách nào để ghi đè các phương thức được kế thừa?

Bạn có thể xác định lại các phương thức bằng cách sử dụng cùng tên trong lớp con để ghi đè các phương thức lớp PHP kế thừa. Bạn cũng có thể sử dụng các phương thức intro() và __construct() ở đây trong lớp con. Chúng sẽ ghi đè các phương thức intro() và __construct() trong lớp cha của lớp con đó

Sử dụng từ khóa cuối cùng

Bạn có thể sử dụng từ khóa cuối cùng để ngăn chặn sự kế thừa của một lớp. Từ khóa cũng có thể được sử dụng để ngăn ghi đè các phương thức. Các ví dụ sau đây cho thấy cách bạn có thể sử dụng từ khóa cuối cùng để ngăn chặn sự kế thừa đó

Rau lớp cuối cùng {// mã của bạn}
final class Vegetable {
// your code
}
// will show error
class Carrot extends Vegetable {
// your code
}
?>

Ví dụ tiếp theo sẽ cho thấy việc sử dụng từ khóa cuối cùng để ngăn ghi đè

class Rau {giới thiệu hàm công khai cuối cùng() {// mã của bạn<

class Vegetable {
final public function intro() {
// your code
}
}
class Carrot extends Vegetable {
// will show error
public function intro() {
// your code
}
}
?>

Các lớp trừu tượng và các phương thức của chúng

Các lớp và phương thức được gọi là trừu tượng khi có một phương thức được đặt tên với lớp cha cần thực hiện các nhiệm vụ với các lớp con của nó. Có tối thiểu một phương thức trừu tượng trong một lớp trừu tượng. Một phương thức được gọi là trừu tượng khi nó được khai báo mà không được triển khai trong mã. Từ khóa trừu tượng được sử dụng để định nghĩa một lớp trừu tượng hoặc phương thức của nó

Phương thức của một lớp con nên được định nghĩa với cùng tên đó khi nó được kế thừa từ một lớp trừu tượng. Nó cũng nên được xác định bằng công cụ sửa đổi quyền truy cập bị hạn chế. Theo cách này, phương thức của lớp con nên được định nghĩa là công khai hoặc được bảo vệ thay vì riêng tư nếu phương thức trừu tượng đó được bảo vệ. Bạn phải đảm bảo rằng số lượng và loại đối số được yêu cầu vẫn giữ nguyên mặc dù các lớp con có thể có thêm các đối số tùy chọn

Ví dụ sau sẽ hướng dẫn bạn cách tạo một lớp trừu tượng cơ bản

lớp trừu tượng YourClass {hàm công khai trừu tượng yourMethod1();hàm công khai trừu tượng yourMethod2 . chuỗi;}?>
abstract class YourClass {
abstract public function yourMethod1();
abstract public function yourMethod2($name, $color);
abstract public function yourMethod3() : string;
}
?>

– Ví dụ về kế thừa các lớp con từ các lớp trừu tượng

Xem xét một ví dụ khác về các quốc gia, bạn có thể kế thừa các lớp con như Ý, Pháp và Đức từ một lớp cha Quốc gia. Điều này có nghĩa là thuộc tính của phương thức public $name và public __construct() có thể được sử dụng bởi các lớp con từ lớp Country cha của chúng do tính kế thừa. Tuy nhiên, có một phương thức trừu tượng có tên intro() được định nghĩa trong tất cả các lớp con sẽ trả về chuỗi có liên quan.

Làm cách nào để xác định một đối tượng trong một lớp PHP?

Một đối tượng là một phần quan trọng của một lớp. Nhiều đối tượng có thể được tạo từ một lớp duy nhất. Mọi phương thức và thuộc tính sẽ được định nghĩa trong tất cả các đối tượng trong một lớp

Tuy nhiên, các đối tượng sẽ có các giá trị thuộc tính khác nhau. Từ khóa new được sử dụng để định nghĩa một đối tượng trong một lớp. Trong ví dụ sau, $potato và $onion là thể hiện của lớp Rau

$potato = newRau();
$onion = newRau();
$potato -> set_name('Potato');
$onion -> set_name(‘Onion’);
echo $potato -> get_name();
echo “
”;

echo $onion -> get_name();
?>

Tầm quan trọng của từ khóa $this và instanceof

Từ khóa $this được liên kết với các đối tượng hiện tại và chỉ có thể được tham gia trong các phương thức của lớp. Với từ khóa này, giá trị của thuộc tính $name có thể được thay đổi. Bạn có thể sử dụng $this và thêm phương thức set_name() để thay đổi nó trong lớp của mình. Đây là cách bạn có thể làm điều đó thông qua ví dụ trước của chúng tôi

class Rau {public $name;function set_name($name) {<
class Vegetable {
public $name;
function set_name($name) {
$this -> name = $name;
}
}
$potato = new Fruit();
$potato -> set_name(“Potato”);
echo $potato -> name;
?>

Hơn nữa, instanceof là một từ khóa khác có mục đích cụ thể trong PHP. Bạn có thể sử dụng nó để kiểm tra sự thuộc về một đối tượng đối với một lớp cụ thể. Hãy xem ví dụ này cho điều đó.

$potato = new Rau();var_dump($potato instanceof Rau);
$potato = new Vegetable();
var_dump($potato instanceof Vegetable);
?>

Vai trò của từ khóa mới

Bạn thường có thể thấy việc sử dụng từ khóa mới trong việc tạo thể hiện của một lớp. Hãy nhớ rằng sẽ luôn có việc tạo một đối tượng trừ khi có một hàm tạo được định nghĩa cho nó để ném một đối tượng ngoại lệ được khởi tạo do lỗi. Ngoài ra, các quy ước PHP bao gồm việc xác định các lớp trước khi khởi tạo, trong một số trường hợp, nó là bắt buộc. Ví dụ sau đây cho thấy việc sử dụng từ khóa mới trong việc tạo một đối tượng và xuất ra một trong các giá trị thuộc tính của nó

?php
class YourClass {
public $name = “Kevin”;
}tên;tên;tên;tên;tên;tên;tên;tên;tên;
$obj = new YourClass();
echo “Your name is ” . $obj->name;
?>

– Những điều quan trọng cần lưu ý về từ khóa mới

Nếu từ khóa mới được sử dụng với một chuỗi chứa tên lớp, nó sẽ tạo một thể hiện mới cho lớp. Bạn sẽ phải sử dụng tên đủ điều kiện của lớp đó trong khi thực hiện việc này nếu nó nằm trong một không gian tên. Hãy nhớ rằng bạn có thể bỏ qua việc thêm dấu ngoặc đơn sau tên của lớp đó nếu không có đối số nào được truyền cho hàm tạo của nó

Đối tượng và biến mới

Bạn có thể tạo các đối tượng mới với cha mẹ mới và bản thân mới trong ngữ cảnh của một lớp. Một biến lớp PHP mới có thể được gán với một thể hiện của một lớp đã được tạo. Trong trường hợp này, cùng một thể hiện sẽ được truy cập bởi biến mới cũng như đối tượng được gán. Hành vi tương tự có thể được quan sát bất cứ khi nào các phiên bản được chuyển đến một chức năng

Cơ chế nhân bản đối tượng

Cú pháp lớp PHP có thể bao gồm một bản sao của đối tượng đã được tạo. Bản sao có thể được thực hiện thông qua nhân bản đối tượng trong đó từ khóa clone được sử dụng. Từ khóa gọi phương thức __clone() của đối tượng đó nếu có thể. Đây là một ví dụ về điều đó.

$object_copy = bản sao $object;

Ngoài ra, một bản sao nông sẽ được thực hiện trên tất cả các thuộc tính của đối tượng đó bởi PHP. Các thuộc tính đó sẽ vẫn là các tham chiếu tham chiếu đến các biến khác. Sau khi hoàn thành nhân bản, phương thức __clone() của đối tượng được tạo gần đây sẽ được gọi nếu có một phương thức __clone() được xác định. Điều này sẽ cho phép những thuộc tính cần thiết phải được thay đổi

– Cách sử dụng nhân bản đối tượng

Việc tạo các bản sao của các đối tượng có thuộc tính được sao chép có thể bị hạn chế sử dụng. Một ví dụ là một đối tượng đại diện cho cửa sổ GTK và giữ tài nguyên của nó. Trong trường hợp này, các hàm tạo sao chép sẽ cần thiết để tạo một bản sao ở dạng cửa sổ mới chứa các thuộc tính giống nhau. Trong khi đối tượng mới sẽ giữ tài nguyên của cửa sổ mới

Một ví dụ khác về nhân bản đối tượng có thể là một đối tượng sử dụng một đối tượng khác và giữ tham chiếu của nó. Đối tượng cha có thể được sao chép để tạo một thể hiện mới của đối tượng con. Bằng cách này, bản sao có thể có một bản sao riêng của nó

Vai trò của từ khóa mở rộng trong Lớp PHP

Từ khóa mở rộng có thể được sử dụng, trong khai báo lớp PHP, bởi một lớp để kế thừa các phương thức, hằng số và thuộc tính của lớp khác. Tuy nhiên, bạn phải nhớ rằng sự kế thừa chỉ có thể xảy ra từ lớp này sang lớp khác. Điều này có nghĩa là không thể mở rộng nhiều lớp trong PHP. Bạn có thể kiểm tra cách sử dụng từ khóa mở rộng với ví dụ sau

class YourClass {public function hello() {echo “Xin chào thế giới. ;}}class NextClass kế thừa YourClass {}
class YourClass {
public function hello() {
echo “Hello World!”;
}
}
class NextClass extends YourClass {
}
$obj = new NextClass();
$obj->hello();
?>

– Ghi đè các phương thức, hằng số và thuộc tính được kế thừa

Các phương thức, hằng số và thuộc tính được kế thừa bởi lớp con có thể bị ghi đè. Điều này có thể xảy ra bằng cách sử dụng cùng tên để khai báo lại chúng đã được định nghĩa trong lớp cha của chúng. Hãy nhớ rằng bạn không thể ghi đè các phương thức đã được lớp cha của chúng định nghĩa là cuối cùng. Bạn có thể sử dụng cha mẹ. từ khóa để tham chiếu các phương thức và thuộc tính tĩnh được ghi đè để có thể truy cập chúng

Các. lớp từ khóa

Từ khóa này có thể được sử dụng trong quá trình phân giải tên lớp. Ví dụ, bạn có thể sử dụng nó như ClassName. class để có thể nhận được tên lớp đủ điều kiện ClassName. Từ khóa có thể đặc biệt hữu ích cho các lớp đã trải qua quá trình đặt tên.

Việc sử dụng các. class từ khóa trong phân giải tên lớp bao gồm một phép biến đổi thời gian biên dịch. Điều đó có nghĩa là không có autoload tại thời điểm tạo chuỗi tên lớp. Điều này dẫn đến việc mở rộng tên lớp mặc dù không có lớp. Ngoài ra, không có lỗi phát hành liên quan đến trường hợp đó.

Với các chế độ gần đây của PHP, bạn thậm chí có thể sử dụng. từ khóa lớp trên các đối tượng. Mặc dù, giải pháp này sẽ xảy ra trong thời gian chạy thay vì thời gian biên dịch. Hiệu ứng của độ phân giải này sẽ giống như trong trường hợp gọi hàm get_class() trên một đối tượng

Làm cách nào để Tự động tải các tệp của một lớp PHP?

Quá trình tự động tải tệp bao gồm giữ các lớp trong các tệp riêng biệt của chúng. Với điều này, bạn phải đảm bảo rằng tên lớp giống với tên của tệp. Ví dụ, bạn có thể giữ một lớp có tên Liên hệ trong một Liên hệ. tập tin php

Trước khi một lớp được sử dụng, trước tiên bạn phải định nghĩa nó trong một tệp. Sau đó, bạn có thể tải lớp bằng cách sử dụng các câu lệnh nhất định. Các câu lệnh này bao gồm các câu lệnh include, require, include_once và require_once

Một chức năng quan trọng trong Autoloading

Trong số nhiều hàm lớp PHP, hàm spl_autoload_register()  đã được khởi chạy với các chế độ ban đầu của PHP. Với nó, một tệp lớp có thể được tải tự động bất cứ khi nào một lớp được sử dụng mà không cần tải. Việc sử dụng hàm này trở nên thịnh hành với các chế độ gần đây của PHP khi nó trở nên quan trọng hơn thông thường so với hàm ma thuật __autoload() .

PHP sẽ tiến hành tìm kiếm tự động lệnh gọi hàm spl_autoload_register() bất cứ khi nào một lớp được sử dụng không được tải. Nó cũng sẽ chấp nhận và gọi một hàm gọi lại bất cứ khi nào việc tạo một lớp như vậy được thực hiện. Hàm load_model có thể được chuyển để có thể sử dụng hàm này

– Nhiều chức năng tự động tải trong một lớp PHP

Với chức năng spl_autoload_register() , bạn cũng có thể sử dụng nhiều chức năng tự động tải mà có thể tạo danh sách các chức năng đó trong PHP. Nó sẽ chạy qua chúng theo thứ tự mà chúng được xác định. Theo cách này, PHP sẽ tiến hành chạy tuần tự nhiều chức năng tự động tải mà các tệp lớp có thể được tải. Bạn có thể tạo một thư mục mới để chứng minh điều này, trong đó bạn có thể lưu trữ các tệp lớp và tạo một tệp khác bên trong thư mục đó.

Sự kết luận

Trong bài viết này, chúng ta đã xem xét các lớp một cách toàn diện và cụ thể là cách chúng có thể được định nghĩa cũng như cách chúng ta có thể thiết lập và nhận các thuộc tính của chúng

Thuộc tính lớp PHP là gì?

Dưới đây là những điểm chính bạn có thể lưu ý

  • Chúng ta đã nói về các đối tượng và biến mới được tạo trong ngữ cảnh của một lớp
  • Chúng tôi đã thấy cơ chế nhân bản đối tượng trong việc tạo bản sao của đối tượng
  • Cơ chế đó có thể được sử dụng trong các tình huống khác nhau và bạn có thể xem chúng ở trên
  • Có một ví dụ về kế thừa các lớp con từ các lớp trừu tượng
  • Một số ánh sáng cũng được làm sáng tỏ về vai trò của phần mở rộng và. từ khóa lớp
  • Cuối cùng, chúng ta đã đề cập đến quy trình quan trọng của việc tự động tải tệp, hàm spl_autoload_register() được liên kết và cách sử dụng nhiều hàm tự động tải

Sử dụng các ví dụ mà chúng tôi đã cung cấp ở trên cùng với thông tin và chi tiết lý thuyết sẽ giúp bạn trở thành một chuyên gia trong việc tạo các lớp PHP ngay lập tức

5/5 - (23 phiếu)

  • Tác giả
  • Bài viết gần đây

Thuộc tính lớp PHP là gì?

Vị trí là tất cả

Vị trí là tất cả. Tài nguyên Go-To của bạn để Tìm hiểu & Xây dựng. CSS, JavaScript, HTML, PHP, C++ và MYSQL

Thuộc tính của lớp là gì?

Thuộc tính là thuộc tính hoặc tính năng đặc trưng cho lớp . Trong khi các lớp là các nhóm đối tượng, một thể hiện là một đối tượng cụ thể thực sự thuộc về một lớp.

Các thuộc tính của lớp được gọi là gì?

Chúng tôi gọi các thuộc tính của các biến bên trong một lớp . Các thuộc tính có thể chấp nhận các giá trị như chuỗi, số nguyên và booleans (giá trị đúng/sai), giống như bất kỳ biến nào khác. Hãy thêm một số thuộc tính cho lớp Car. Chúng tôi đặt từ khóa công khai trước một thuộc tính lớp.

Thuộc tính lớp trong OOP là gì?

Các lớp có thể có các biến bên trong nó. Các biến đó được gọi là thuộc tính. Một thuộc tính là một biến PHP bình thường ở bất kỳ loại dữ liệu nào (số nguyên, chuỗi, mảng, đối tượng, v.v.) . Trong class trước khi khai báo biến ta nên thêm từ khóa visibility để xác định vị trí của biến.

Các lớp trong PHP là gì?

Một lớp PHP và nói chung là lập trình hướng đối tượng , cung cấp các cách tiếp cận bổ sung cho khả năng sử dụng lại và có thể được sử dụng cho nhiều loại . Họ có thể mô tả các thực thể có các thuộc tính và hành vi đã biết. Chúng có thể được sử dụng làm thông báo cho các chức năng và các đối tượng khác.