Класс является одним из типов данных. Каждое определение класса начинается с ключевого слова class, затем следует имя класса, пара фигурных скобок, внутри которых можно определять свойства и методы (будет рассмотрено) этого класса.

Именем класса может быть любое слово, при условии, что оно не входит в список зарезервированных слов PHP, начинается с буквы или символа подчеркивания и за которым следует любое количество букв, цифр или символов подчеркивания.

<?php
class FirstClass
{
    ...
}
?>

Объекты

Для создания экземпляра (объекта) класса используется директива new.

Пример создания объекта:

<?php
$instance = new FirstClass();

// Это можно сделать и с помощью переменной:
$className = 'FirstClass';
$instance = new $className(); // FirstClass()
?>

Конструкторы \ деструкторы

PHP позволяет объявлять методы-конструкторы. Классы, в которых объявлен метод-конструктор, будут вызывать этот метод при каждом создании нового объекта.

Синтаксис:

function __construct(mixed $args = "") { // можно передавать параметры
   ...
}

Использование:

<?php
class FirstClass
{
   function __construct($hello = "hi") {
      return $hello;
   }
}

$instance = new FirstClass(); // вернет строку "hi"
$instance = new FirstClass("hello"); // вернет строку "hello"
?>

Также, в PHP представлены деструкторы. Деструктор будет вызван при освобождении всех ссылок на определенный объект или при завершении скрипта (порядок выполнения деструкторов не гарантируется).

Пример:

<?php
class FirstClass
{
   function __destruct() {
      echo "Вызов деструктора";
   }
}
?>