<?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;// Class instantiation.
//var_dump($obj);
echo "1st drill:"."<br>";
echo $obj->getProperty(); //echo prop1 string (// Get the property value).
$obj->setProperty('I am a new property value'."<br><br>");
echo $obj->getProperty(); // Read it out again to show the change.
//Second Drill
echo "second drill: "."<br>";
class class2 {
public $obj2="I am the first variable from the second drill.";
public function setProperty2($newval2)
{
$this->obj2=$newval2;
}
public function getProperty2($newval2)
{
return $this->obj2."<br>";
}
}
// Create two objects
$obj = new class2;
$obj2 = new class2;
// Get the value of $prop1 from both objects
echo $obj->getProperty(); //taken from first drill.
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!"."<br><br>");
// Output both objects' $prop1 value
echo $obj->getProperty();
echo $obj2->getProperty();
1st drill:<br>I'm a class property!<br/>I am a new property value<br><br><br/>second drill: <br>
Fatal error: Uncaught Error: Call to undefined method class2::getProperty() in /in/MSWq6:41
Stack trace:
#0 {main}
thrown in /in/MSWq6 on line 41
Process exited with code 255.
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
1st drill:<br>I'm a class property!<br/>I am a new property value<br><br><br/>second drill: <br>
Fatal error: Uncaught Error: Call to undefined method class2::getProperty() in /in/MSWq6:41
Stack trace:
#0 {main}
thrown in /in/MSWq6 on line 41
Process exited with code 255.
Output for 5.5.24 - 5.5.35, 5.6.8 - 5.6.28
1st drill:<br>I'm a class property!<br/>I am a new property value<br><br><br/>second drill: <br>
Fatal error: Call to undefined method class2::getProperty() in /in/MSWq6 on line 41
Process exited with code 255.