public function attack($person) { $person->health - 10; } } $frank = new Person('Frank'); echo $frank->speak(); echo "<br><br><br><br><br><br>"; class Vehicle { public $fuelAmount; public $mpg; public function __construct($fuelAmount, $mpg) { $this->fuelAmount = $fuelAmount; $this->mpg = $mpg; } public function honk() { return "honk honk I have " . $this->fuelAmount . " gal of gas."; } public function drive($distance) { $this->fuelAmount -= $distance / $this->mpg; } } $mustang = new Vehicle(100, 50); echo $mustang->honk(); $mustang->drive(500); echo $mustang->honk(); echo "<br><br><br><br><br><br>";
echo "And I know how to dance <br/>"; } ?> <h2>Inheritance</h2> <?php $square = new Square(); if (property_exists($square, "hasSides")) { echo "I have sides"; } ?> <h2>Overriding Parent Methods</h2> <?php $vehicle = new Vehicle(); echo $vehicle->honk() . "<br/>"; $bicycle = new Bicycle(); echo $bicycle->honk() . "<br/>"; echo $bicycle->drive() . "<br/>"; ?> <h2>Using <code>const</code></h2> <?php // :: => scope resolution operator if (Immortal::alive) { echo "I live forever!"; } ?> <h2><code>static</code> Keyword</h2> <?php echo Person::greet() . "<br/>";