Hướng dẫn what is set method in php? - Phương thức set trong php là gì?

Hướng dẫn what is set method in php? - Phương thức set trong php là gì?

Trong bài viết này, chúng tôi chỉ ra cách sử dụng các phương pháp ma thuật PHP __get và __set.

Phương thức ma thuật PHP __get và __set hoạt động như getters và setters cho các giá trị đối tượng, nhưng nó có thêm lợi thế ở chỗ bạn không phải khai báo các thuộc tính đối tượng (biến) trong lớp.

Thay vào đó, khi bạn đặt một giá trị (với thuộc tính đối tượng không bao giờ được khai báo trong lớp), phương thức ma thuật __set được tự động gọi và đặt giá trị.

Điều tương tự cũng đúng với phương thức __get. Không có thuộc tính đối tượng được khai báo trong lớp mà bạn muốn có, phương thức __get Magic được gọi tự động và nhận được giá trị.

Vì vậy, các phương thức ma thuật __get và __set hoạt động như getters và setters, mà không có biến thuộc tính đối tượng phải được khai báo trong lớp.

Chúng tôi sẽ hiển thị từng trong số này trong mã dưới đây.

Trong mã dưới đây, chúng tôi tạo ra một lớp học gọi là trẻ em. Trong lớp này, chúng tôi đặt chiều cao của trẻ thông qua phương thức __set hoặc có được chiều cao của trẻ thông qua phương pháp __get.

Các phương thức Getter và Setter cung cấp đóng gói dữ liệu để để đặt hoặc lấy dữ liệu, nó phải chuyển qua một phương thức. Lý do chúng tôi làm điều này là vì nhiều lần chúng tôi muốn kiểm tra dữ liệu trước để đảm bảo đó là giá trị phù hợp hoặc hợp lý.

Trong lớp học này, chúng tôi đang thiết lập chiều cao của một đứa trẻ. Ví dụ, chiều cao không thể là âm. Chiều cao không thể cao 1 inch. Không có con cao một inch. Đây là lý do chúng tôi chỉ cho phép độ cao 30 inch hoặc học sinh. Hãy tưởng tượng đây là học sinh lớp năm. Tất cả đều là cách quá khứ.

Vì vậy, việc truyền dữ liệu đầu tiên thông qua một phương thức cho phép chúng tôi lọc ra dữ liệu xấu. Nó cho phép đóng gói này, nơi chúng ta không phải chấp nhận dữ liệu xấu, chẳng hạn như chiều cao âm hoặc cao 0,5 inch.

Đây là lý do tại sao các phương thức Getter và Setter thường được sử dụng.

Vì vậy, chúng tôi tạo ra một lớp học gọi là trẻ em.

Bên trong lớp này, chúng tôi tạo các phương thức setter và getter.

Phương thức đầu tiên mà chúng tôi tạo phương thức setter bằng hàm __set. Hàm setter phải chấp nhận 2 tham số, thuộc tính đối tượng bạn đang xác định và giá trị của thuộc tính đối tượng này. Khi chúng tôi đặt chiều cao của trẻ trong mã này, chiều cao là thuộc tính đối tượng và giá trị của chiều cao chúng tôi đặt thành giá trị. Chúng tôi làm cho nó để nếu giá trị được chuyển vào thuộc tính đối tượng lớn hơn 30, chúng tôi đặt thuộc tính đối tượng thành giá trị đó. Nếu giá trị nhỏ hơn 30, thì phương thức SET ma thuật không đặt giá trị.

Sau đó, chúng tôi tạo chức năng tiếp theo, phương thức Getter bằng hàm __get. Hàm Get chấp nhận một tham số, thuộc tính $ của đối tượng. Chúng tôi không cần giá trị $ làm tham số, vì giá trị $ đã được đặt bởi hàm setter. Với hàm getter, chúng tôi không đặt giá trị. Chúng tôi chỉ lấy lại giá trị đã được đặt. Vì vậy, trong hàm getter này, chúng tôi trả lại chiều cao của trẻ bằng cách gọi hàm $ this->. $ this-> Thuộc tính đề cập đến giá trị của thuộc tính của đối tượng chúng tôi nhận được.

Tất cả điều này sẽ có ý nghĩa hơn bây giờ dưới đây.

Vì vậy, bên dưới điều này, chúng tôi tạo ra một đối tượng của lớp trẻ em, $ KID1.

Sau đó, chúng tôi là thuộc tính đối tượng, chiều cao, $ KID1 bằng 45. Điều này làm cho chiều cao của đứa trẻ 45 inch.

Điều đáng kinh ngạc về phương thức ma thuật __set () trong PHP là chúng tôi đã xác định biến thuộc tính $ Chiều cao bất cứ nơi nào trong lớp. Tuy nhiên, chúng tôi chỉ tự động đặt chiều cao của đối tượng $ KID1. Điều này kích hoạt phương pháp ma thuật PHP __set (). Phương pháp coi chiều cao là một thuộc tính của đối tượng và 45 là giá trị của thuộc tính chiều cao này. $ KID1 là đối tượng của cuộc gọi này.

Vì vậy, vì chúng tôi tự động đặt một thuộc tính đối tượng và chiều cao của nó mà không cần khai báo chúng hoặc gọi hàm, điều này tự động gọi phương thức ma thuật PHP __set (). Vì vậy, giá trị tài sản $ là chiều cao. Giá trị $ của thuộc tính này là 45. Chúng tôi chỉ đặt giá trị nếu giá trị lớn hơn 30. Chúng tôi đặt giá trị thông qua dòng, $ this-> property = $ value. $ Điều này đề cập đến đối tượng Kid1. Chúng tôi đặt $ Kid-> chiều cao = 45. Vì vậy, bây giờ bạn có thể thấy cách này được đặt thông qua Phương pháp Phép thuật PHP __set.

Điều này bao gồm phần tập hợp.

Để tự động lấy thuộc tính của một đối tượng, bạn gọi hàm đầu ra như Echo hoặc in với tham số của một đối tượng và thuộc tính. Điều này tự động kích hoạt phương pháp ma thuật PHP __get.

Tham số duy nhất cần thiết cho phương thức __get () là biến thuộc tính $. Chúng tôi trở lại chiều cao của đứa trẻ tính bằng inch.

Vì vậy, đây là tất cả những gì được yêu cầu để sử dụng các phương pháp ma thuật PHP __get và __set. Nó rất có thể thích nghi vì bạn không cần phải khai báo các biến trong lớp và bạn không cần phải gọi một hàm. Nếu bạn thiết lập nó đúng cách, giống như cách thể hiện, nó sẽ tự động gọi các phương thức ma thuật __get hoặc __set. Vì vậy, theo cách này, nó đơn giản hóa mã.

Chạy mã PHP ở trên mang lại đầu ra sau đây được hiển thị bên dưới.

Đầu ra PHP thực tế


Chiều cao của trẻ cao 45 inch

Tài nguyên liên quan

Phương thức được đặt và nhận trong PHP là gì?

Getters và setters là các phương thức được sử dụng để xác định hoặc truy xuất các giá trị của các biến, thông thường là các phương thức riêng tư. Đúng như tên cho thấy, phương pháp Getter là một kỹ thuật nhận hoặc khôi phục giá trị của một đối tượng. Ngoài ra, một phương thức setter là một kỹ thuật đặt giá trị của một đối tượng.methods used to define or retrieve the values of variables, normally private ones. Just as the name suggests, a getter method is a technique that gets or recovers the value of an object. Also, a setter method is a technique that sets the value of an object.

Chức năng thiết lập làm gì trong PHP?

Hàm ISSET trong PHP được sử dụng để xác định xem một biến có được đặt hay không.Một biến được coi là một biến tập hợp nếu nó có một giá trị khác với null.Nói cách khác, bạn cũng có thể nói rằng chức năng ISSET được sử dụng để xác định xem bạn đã sử dụng một biến trong mã của mình hay không trước đây.

__ được đặt trong PHP là gì?

__set () được chạy khi ghi dữ liệu vào các thuộc tính không thể truy cập.__get () được sử dụng để đọc dữ liệu từ các thuộc tính không thể truy cập.run when writing data to inaccessible properties. __get() is utilized for reading data from inaccessible properties.

Phương pháp __ __ trong PHP là gì?

__Function__ và __method__ như trong Php 5.0.4 là như vậy.__Function__ chỉ trả về tên của hàm.trong khi __method__ trả về tên của lớp cùng với tên của hàm.returns the name of the class alongwith the name of the function.