PHP 5 přináší spoustu výborných změn. Jedná se hlavně o změnu jeho objektové koncepce. Většině "taky-programátorů" to bude jedno, nevyužívají ani potenciálu PHP 4, nicméně, lidem jako já, co znají výborně C++, sedne PHP 5 mnohem lépe. Jeho implementace objektů se totiž zjevně nechala inspirovat C++ a Javou.
Třída bude mít konsktruktory (což má nakonec částečně již teď) a desktruktory:
class _metodaA {
var $x;
function __construct($x) {
$this->x = $x;
}
function display() {
print($this->x);
}
function __destruct() {
print("bye bye");
}
}
$o1 = new _metodaA(4);
$o1->display();
Třída bude mít protected (je k nim umožněn přístup i přímým potomkům) a private (přístup k nim mají jen třídy samotné, v nichž jsou definovány) proměnné a rovněž metody. Dosavadní kód (PHP 4) je považován, jako by všechny metody byly typu public.
class Foo {
private function aPrivateMethod() {
echo "Foo::aPrivateMethod() called\n";
}
protected function aProtectedMethod() {
echo "Foo::aProtectedMethod() called\n";
$this->aPrivateMethod();
}
}
class Bar extends Foo {
public function aPublicMethod() {
echo "Bar::aPublicMethod() called\n";
$this->aProtectedMethod();
}
}
$o = new Bar;
$o->aPublicMethod();

