Sử dụng thuộc tính của lớp trong PHP

Thứ ba, 25/11/2014 4:03 PM
 

   Bên trong class bạn có thể truy cập con trõ đặc biệt được gọi là $this. Nếu một thuộc tính của lớp hiện hành gọi là $attribute. bạn có thể tham chiếu đến chúng bằng cách khai báo sau:

$this -> $attribute

   Chẳng hạn như tham chiếu đến thuộc tính của lớp hiện hành bạn có thể tham khảo ví dụ dưới đây:

<?php
class myclass
 {
  var $attribute;
  function myclass($mypara)
  {
   $this->attribute=$mypara;
   echo $this->attribute;
  }
 }
?>
<html>
<head>
  <title>Classes and Object</title>
</head>
<body>
<?php
 $a= new myclass("First");
 
?>
</body>
</html>

   Một số ngôn ngữ lập trình hướng đối tượng khác cho phép bạn giới hạn quyền truy cập vào thuộc tính, bằng cách khai báo từ khóa private hay protect trước các thuộc tính trong lớp.

   Tuy nhiên đối với các trường hợp như thế, bạn chỉ cần khai báo lại thuộc tính này như cách viết thuộc tính set và get trongvisual basic chẳng hạn.

   Để tham khảo các giới hạn quyền truy cập vào các thuộc tính trong PHP, bạn thử xem khai báo thực hiện cùng một nhiệm vụ như sau:

class myclass

 {
  var $attribute;
 {

$a= new myclass();

$a->attribute="value";

echo $a->attribute;

   Trong trường hợp này, bạn cho phép truy cập trực tiếp một thuộc tính bên trong class, chính vì vậy đây không phải là giải pháp tốt khi xây dựng class.

   Để giới hạn quyền  truy cập các thuộc tính của class, bạn hãy tham khảo ví dụ sau:

<?php
class myclass
 {
  var $attribute;
  function get_attribute()
  {
   return $this->attribute;
  }
  function set_attribute($new_value)
  {
   $this->attribute=$new_value;
  }

 }
?>
<html>
<head>
  <title>Classes and Object</title>
</head>
<body>
<?php
 $a=new myclass();
 $a->set_attribute("Protect Attribute");
 echo $a->get_attribute();
?>
</body>
</html>

 

Bài viết cùng chuyên mục: "Lập trình php"

Liên hệ