Properties and Method in PHP

Defining Class Properties

To add data to a class, properties, or class-specific variables, are used. These work exactly like regular variables, except they're bound to the object and therefore can only be accessed using the object.

<?php
class MyClass
{
 public $prop1 = "I'm a class property!";
}
$obj = new MyClass;
echo $obj->prop1; // Output the property
?>
Output: I'm a class property!

Defining Class Methods

Methods are class-specific functions. Individual actions that an object will be able to perform are defined within the class as methods.

<?php
class MyClass
{
 public $prop1 = "I'm a class property!";
 public function setProperty($newval)
 {
 $this->prop1 = $newval;
  }
 public function getProperty()
 {
 return $this->prop1 . "<br />";
 }
}
$obj = new MyClass;
echo $obj->getProperty(); // Get the property value
$obj->setProperty("I'm a new property value!"); // Set a new one
echo $obj->getProperty(); // Read it out again to show the change
?>
Output: I'm a class property!
I'm a new property value!

Example

<?php
class MyClass
{
 public $prop1 = "I'm a class property!";
 public function setProperty($newval)
 {
 $this->prop1 = $newval;
  }
 public function getProperty()
 {
 return $this->prop1 . "<br />";
 }
}
// Create two objects
$obj = new MyClass;
$obj2 = new MyClass;
// Get the value of $prop1 from both objects
echo $obj->getProperty();
echo $obj2->getProperty();
// Set new values for both objects
$obj->setProperty("I'm a new property value!");
$obj2->setProperty("I belong to the second instance!");
// Output both objects' $prop1 value
echo $obj->getProperty();
echo $obj2->getProperty();
?>
Output: I'm a class property!
I'm a class property!
I'm a new property value!
I belong to the second instance!