Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?


Giới thiệu

Các thành viên dữ liệu được khai báo bên trong lớp được gọi là thuộc tính. Thuộc tính đôi khi được gọi là thuộc tính hoặc trường. Trong PHP, một tài sản có đủ điều kiện bởi một trong các từ khóa Truy cập, công khai, riêng tư hoặc được bảo vệ. Tên của tài sản có thể là bất kỳ nhãn hợp lệ trong PHP. Giá trị của tài sản có thể khác nhau cho mỗi trường hợp của lớp. Đó là lý do tại sao nó đôi khi được gọi là biến thể hiện.public, private or protected. Name of property could be any valid label in PHP. Value of property can be different for each instance of class. That's why it is sometimes referred as instance variable.

Bên trong bất kỳ phương thức thể hiện nào, thuộc tính có thể được truy cập bằng cách gọi bối cảnh của đối tượng có sẵn dưới dạng một pesudo biến $ này. Nếu một tài sản được khai báo là công khai, nó có sẵn để phản đối sự trợ giúp của -> toán tử. Nếu một thuộc tính được xác định bằng từ khóa tĩnh, giá trị của nó được chia sẻ giữa tất cả các đối tượng của lớp và được truy cập bằng toán tử phân giải phạm vi (::) & nbsp; và tên của lớp.$this. If a property is declared as public, it is available to object with the help of -> operator. If a property is defined with static keyword, its value is shared among all objects of the class and is accessed using scope resolution operator (::) and name of class.

Tuyên bố và truy cập tài sản

Ví dụ này cho thấy cách xác định và truy cập thuộc tính

Thí dụ

& nbsp; bản demo trực tiếp

<?php
class myclass{
   private $fname="Kiran";
   public $mname="Pratap";
   static $lname="Singh";
   function dispdata(){
      echo "$this->fname
";       echo "$this->mname
";       echo myclass::$lname;    } } $obj=new myclass(); $obj->dispdata(); ?>

Đầu ra

Đầu ra của mã trên như sau -

Kiran
Pratap
Singh

Bên ngoài lớp, thuộc tính thể hiện được khai báo là công khai có sẵn cho đối tượng, nhưng các thuộc tính riêng tư không thể truy cập được. Trong các phiên bản trước của PHP, từ khóa VAR có sẵn để khai báo tài sản. Mặc dù hiện tại nó đã bị phản đối, nhưng nó vẫn có sẵn để tương thích ngược và được coi là tuyên bố công khai tài sản.var keyword was available for property declaration. Though it has now been deprecated, it is still available for backward compatibility and is treated as public declaration of property.

Php 7.4 giới thiệu loại khai báo các biến tài sản

Thí dụ

<?php
class myclass{
   private string $name;
   private int $age;
   function setdata(string $x, int $y){
      $this->name=$x;
      $this->age=$y;
   }
}
$obj=new myclass("Kiran",20);
?>

Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?

& nbsp; bản demo trực tiếp

  • Đầu ra
  • Đầu ra của mã trên như sau -
  • Bên ngoài lớp, thuộc tính thể hiện được khai báo là công khai có sẵn cho đối tượng, nhưng các thuộc tính riêng tư không thể truy cập được. Trong các phiên bản trước của PHP, từ khóa VAR có sẵn để khai báo tài sản. Mặc dù hiện tại nó đã bị phản đối, nhưng nó vẫn có sẵn để tương thích ngược và được coi là tuyên bố công khai tài sản.
  • Php 7.4 giới thiệu loại khai báo các biến tài sản
  • Cập nhật vào ngày 18 tháng 9 năm 2020 11:34:13
  • Câu hỏi và câu trả lời liên quan
  • PHP kế thừa các thuộc tính của đối tượng không thuộc lớp?
  • Thuộc tính của lớp chủ đề
  • Các thuộc tính và phương pháp tĩnh PHP
  • Tóm tắt lớp PHP
  • Hằng số lớp PHP
  • Lớp đóng PHP
  • Lớp máy phát PHP
  • Lớp yếu PHP
  • Các thuộc tính của lớp mảng trong C#là gì?
  • Giải thích lớp trừu tượng trong PHP.

// In các giá trị thuộc tính

Các lớp có thể có các biến trong nó. Những biến đó được gọi là thuộc tính. Thuộc tính là một biến PHP bình thường trong bất kỳ loại dữ liệu nào (số nguyên, chuỗi, mảng, đối tượng, v.v.).properties. A property is a normal PHP variable which is in any data type (integer, string, array, object, etc).

Trong các lớp, trước khi khai báo một biến, chúng ta nên thêm từ khóa hiển thị để xác định nơi có sẵn biến. Bạn sẽ tìm hiểu thêm về điều này sau. Hiện tại, hãy nhớ rằng việc thêm từ khóa công khai trước biến sẽ làm cho biến có sẵn ở mọi nơi.


<?php
class House {
	public $primaryColor = 'black';
	public $secondaryColors = [
		'bathroom' => 'white',
		'bedroom' => 'light pink',
		'kitchen' => 'light blue'
	];
	public $hasPool = false;
	public $extra;
}

Như trong ví dụ trên, chúng ta có thể khai báo bất kỳ loại biến nào là thuộc tính. Chúng ta có thể thêm các giá trị mặc định cho các thuộc tính đó. .

Nhắc nhở giải thích bản thiết kế. Một kế hoạch chi tiết có thể có chiều rộng và chiều cao mặc định trong đó. Nhưng, một số ngôi nhà cũng sẽ cần một số tính năng bổ sung không được xác định trong bản thiết kế. Vì vậy, những tính năng bổ sung đó không có giá trị mặc định. Nhưng, họ có thể được thêm vào một ngôi nhà. (Ví dụ: Có một hồ bơi)

Sự kết luận

Trong chương này, chúng tôi đã học cách khai báo một tài sản trong một lớp.

Trong chương tiếp theo, bạn sẽ học cách tạo các đối tượng từ các lớp (các ngôi nhà khác nhau từ bản thiết kế).

// In các giá trị thuộc tính

Class:

Mỗi lớp chứa các biến và hàm yêu cầu để xác định các thuộc tính của một nhóm cụ thể. Nói chung, tên của lớp được xác định bằng cách bắt đầu với chữ cái và ở dạng số ít. Từ khóa, lớp được sử dụng để khai báo một lớp.class is used to declare a class.

Syntax::

class_name { Class_name {

// Thuộc tính và Phương pháp

}

Đối tượng được tuyên bố sử dụng các thuộc tính của một lớp. Biến đối tượng được khai báo bằng cách sử dụng từ khóa mới theo sau là tên lớp. Nhiều biến đối tượng có thể được khai báo cho một lớp. Các biến đối tượng là hoạt động như một biến tham chiếu. Vì vậy, nếu giá trị thuộc tính của bất kỳ lớp nào được sửa đổi bởi một đối tượng thì giá trị thuộc tính của một đối tượng khác của cùng một lớp sẽ được thay đổi tại một thời điểm.new keyword followed by the class name. Multiple object variables can be declared for a class. The object variables are work as a reference variable. So, if the property value of any class is modified by one object then the property value of another object of the same class will be changed at a time.

Cú pháp::

$ object_name = new class_name () = new Class_name()

Ví dụ-1: khai báo và đọc thuộc tính lớp

Ví dụ sau đây cho thấy cách khai báo và truy cập các thuộc tính của một lớp. Tạo một tệp PHP với tập lệnh sau. Hai thuộc tính có tên $ name và $ giá của lớp có tên là sản phẩm được khai báo và khởi tạo với các giá trị. Tiếp theo, một đối tượng của lớp này được tuyên bố để in các giá trị của các thuộc tính dưới dạng một đối tượng và in riêng từng giá trị thuộc tính. $name and $price of the class named Product are declared and initialized with the values. Next, an object of this class is declared to print the values of the properties as an object and print each property value separately.

// Tuyên bố lớp

// Tuyên bố lớp

sản phẩm lớp Product

{

& nbsp; & nbsp; & nbsp; & nbsp; // khai báo tài sản//Declare properties

& nbsp; & nbsp; & nbsp; & nbsp; công khai $ name = "bánh";public $name = "Cake";

& nbsp; & nbsp; & nbsp; & nbsp; Công khai $ giá = 20;public $price = 20;

}

Đối tượng được tuyên bố sử dụng các thuộc tính của một lớp. Biến đối tượng được khai báo bằng cách sử dụng từ khóa mới theo sau là tên lớp. Nhiều biến đối tượng có thể được khai báo cho một lớp. Các biến đối tượng là hoạt động như một biến tham chiếu. Vì vậy, nếu giá trị thuộc tính của bất kỳ lớp nào được sửa đổi bởi một đối tượng thì giá trị thuộc tính của một đối tượng khác của cùng một lớp sẽ được thay đổi tại một thời điểm.

Cú pháp: = new Product;

$ object_name = new class_name ()

print_r($obj_pro);($obj_pro);

Ví dụ-1: khai báo và đọc thuộc tính lớp

Ví dụ sau đây cho thấy cách khai báo và truy cập các thuộc tính của một lớp. Tạo một tệp PHP với tập lệnh sau. Hai thuộc tính có tên $ name và $ giá của lớp có tên là sản phẩm được khai báo và khởi tạo với các giá trị. Tiếp theo, một đối tượng của lớp này được tuyên bố để in các giá trị của các thuộc tính dưới dạng một đối tượng và in riêng từng giá trị thuộc tính. "
Product Name: "
.$obj_pro->name."
"
;

?> "Product Price: ".$obj_pro->price."
"
;

// Tuyên bố lớp

Output::

sản phẩm lớp

Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?

{

& nbsp; & nbsp; & nbsp; & nbsp; // khai báo tài sản$name, $type and $price have declared as properties of the class named Product. A function named details() has been declared as the method of the class that will print the property values of the class. Next, an object of this class has declared and called the method, details().

// Tuyên bố lớp

// Tuyên bố lớp

sản phẩm lớp Product

{

& nbsp; & nbsp; & nbsp; & nbsp; // khai báo tài sản//Declare properties

& nbsp; & nbsp; & nbsp; & nbsp; công khai $ name = "bánh";public $name ="HP Pavillion";

& nbsp; & nbsp; & nbsp; & nbsp; Công khai $ giá = 20;public $type = "Laptop";

// Khai báo đối tượngpublic $price = 1200;

$ obj_pro = sản phẩm mới;//Declare method to print the properties

// in tất cả các thuộc tính đối tượngpublic function details()

// in riêng từng thuộc tính{

echo "Tên sản phẩm:". $ obj_pro-> tên. "";echo "Name :".$this->name."
"
."Type :".$this->type."
"
."Price :$".$this->price."
"
;

echo "giá sản phẩm:". $ obj_pro-> giá. "";}

}

?>

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh trên từ máy chủ. = new Product();

Ví dụ-2: khai báo một lớp có thuộc tính và phương thức

echo$object->details(); $object->details();

// Tuyên bố lớp

Output::

sản phẩm lớp

Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?

{

& nbsp; & nbsp; & nbsp; & nbsp; // khai báo tài sản$name, $type, and $price have been declared and initialized with the values. A function named total_price() has been declared with an argument named $qty as the argument. total_price() will calculate the total price of the product based on the argument value and return it to the caller. Here, $this variable is used to read the value of the class property, $price. Next, an object variable named $object has been declared to access the property and method of the class. $quantity variable has been used in the script to pass the argument value to total_price(). All property values and the return value of the function will be printed by using an object variable.

// khai báo lớp học

// Tuyên bố lớp

sản phẩm lớp Product

{

& nbsp; & nbsp; & nbsp; & nbsp; // khai báo tài sản//Declare properties

& nbsp; & nbsp; & nbsp; & nbsp; công khai $ name = "bánh";public $name ="HP Pavillion";

& nbsp; & nbsp; & nbsp; & nbsp; Công khai $ giá = 20;public $type = "Laptop";

// Khai báo đối tượngpublic $price = 1200;

$ obj_pro = sản phẩm mới;/*Declare method with argument to calculate

// in tất cả các thuộc tính đối tượng

// in riêng từng thuộc tínhpublic function total_price($qty)

// in riêng từng thuộc tính{

echo "Tên sản phẩm:". $ obj_pro-> tên. "";//Calculate the total price

echo "giá sản phẩm:". $ obj_pro-> giá. "";$total = $this->price * $qty;

?>//Return the price

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh trên từ máy chủ.return $total;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; }}

}

// khai báo đối tượng

$ object = new Sản phẩm (); = new Product();

// khai báo số lượng

$quantity=10; = 10;

// Gọi phương thức

$total_price=$object->total_price($quantity); = $object->total_price($quantity);

// In chi tiết sản phẩm với tổng giá

echo "Tên:". $ Object-> Tên. "". "Name : ".$object->name."
"
.

& nbsp; & nbsp; & nbsp; "Loại:". $ Object-> type. ""."Type : ".$object->type."
"
.

& nbsp; & nbsp; & nbsp; "Giá únit: $". $ Object-> Giá. ""."Únit Price : $".$object->price."
"
.

& nbsp; & nbsp; & nbsp; "Số lượng:". $ số lượng. ""."Quantity : ".$quantity."
"
.

& nbsp; & nbsp; & nbsp; "Tổng giá: $". $ Total_price;"Total Price : $".$total_price;

?>

Output::

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh trên từ máy chủ.

Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?

Ví dụ-4: Khởi tạo các thuộc tính lớp bên ngoài lớp

Trong các ví dụ trước, tất cả các giá trị thuộc tính được khởi tạo bên trong lớp. Ví dụ sau đây cho thấy cách các thuộc tính lớp sẽ được khởi tạo bằng cách sử dụng đối tượng của lớp. Tạo một tệp PHP với tập lệnh sau. Ở đây, ba thuộc tính lớp đã được xác định bên trong lớp mà không cần khởi tạo. Tiếp theo, một biến đối tượng được sử dụng để khởi tạo các thuộc tính lớp và in các giá trị thuộc tính.

// khai báo lớp học

// khai báo lớp học

sản phẩm lớp Product

{

& nbsp; & nbsp; & nbsp; & nbsp; // khai báo thuộc tính không có giá trị//Declare properties without values

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; tên công khai $;public $name;

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; gõ $ public;public $type;

& nbsp; & nbsp; & nbsp; & nbsp; Giá $ $;public $price;

}

// khai báo đối tượng

$ object = new Sản phẩm (); = new Product();

// khai báo số lượng

// Gọi phương thức->name = "Samsung Printer M06753";

$object->type="Printer";->type = "Printer";

$object->price=100;->price = 100;

// In chi tiết sản phẩm với tổng giá

echo "Tên:". $ Object-> Tên. "". "Name :".$object->name."
"
."Type :".$object->type."
"
."Price :$".$object->price."
"
;

?>

Output::

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh trên từ máy chủ.

Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?

Ví dụ-4: Khởi tạo các thuộc tính lớp bên ngoài lớp

Conclusion:

Trong các ví dụ trước, tất cả các giá trị thuộc tính được khởi tạo bên trong lớp. Ví dụ sau đây cho thấy cách các thuộc tính lớp sẽ được khởi tạo bằng cách sử dụng đối tượng của lớp. Tạo một tệp PHP với tập lệnh sau. Ở đây, ba thuộc tính lớp đã được xác định bên trong lớp mà không cần khởi tạo. Tiếp theo, một biến đối tượng được sử dụng để khởi tạo các thuộc tính lớp và in các giá trị thuộc tính.

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; tên công khai $;

Hướng dẫn how do you declare and access properties of a class in php? - làm cách nào để bạn khai báo và truy cập các thuộc tính của một lớp trong php?

// khai báo lớp học

Làm thế nào chúng ta có thể truy cập các phương thức và thuộc tính của một lớp trong PHP?

Khi bạn có một đối tượng, bạn có thể sử dụng -> ký hiệu để truy cập các phương thức và thuộc tính của đối tượng: $ object -> propertyName $ object -> methodname ([arg, ...]) các phương thức và trả về một giá trị: $ clan = $ rasmus-> gia đình ('mở rộng');$object -> propertyname $object -> methodname ([ arg, ... ] ) Methods are functions, so they can take arguments and return a value: $clan = $rasmus->family('extended');

Tuyên bố thuộc tính trong PHP là gì?

Các thành viên dữ liệu được khai báo bên trong lớp được gọi là thuộc tính.Thuộc tính đôi khi được gọi là thuộc tính hoặc trường.Trong PHP, một tài sản có đủ điều kiện bởi một trong các từ khóa Truy cập, công khai, riêng tư hoặc được bảo vệ.Tên của tài sản có thể là bất kỳ nhãn hợp lệ trong PHP. are called properties. Property is sometimes referred to as attribute or field. In PHP, a property is qualified by one of the access specifier keywords, public, private or protected. Name of property could be any valid label in PHP.

Làm thế nào xác định một thuộc tính lớp trong PHP?

Các lớp có thể có các biến trong nó.Những biến đó được gọi là thuộc tính.Thuộc tính là một biến PHP bình thường trong bất kỳ loại dữ liệu nào (số nguyên, chuỗi, mảng, đối tượng, v.v.).Trong các lớp, trước khi khai báo một biến, chúng ta nên thêm từ khóa hiển thị để xác định nơi có sẵn biến.add the visibility keyword to define where the variable is available.

Người vận hành nào được sử dụng để truy cập các thuộc tính và phương thức trong PHP?

Toán tử độ phân giải phạm vi (: :) Toán tử độ phân giải phạm vi (còn được gọi là paamayim nekudotayim) hoặc theo thuật ngữ đơn giản hơn, đại tràng kép, là một mã thông báo cho phép truy cập vào các thuộc tính hoặc phương thức hoặc phương thức của một lớp. (::) ¶ The Scope Resolution Operator (also called Paamayim Nekudotayim) or in simpler terms, the double colon, is a token that allows access to static, constant, and overridden properties or methods of a class.