Автозагрузка классов

Php 5 позволяет загружать классы в автоматическом режиме при попытке создать экземпляр неизвестного класса. Для этого используется функция spl_autload().

spl_autoload();
$product = new Product();

При таком вызове когда интерпритатор обнаруживает вызов неизвестного класса, он преобразует имя класса к нижнему регистру и пытается загрузить: product.inc а потом product.php (стандартные расширения).

Вместо стандартной функции spl_autload() - можно зарегестрировать пользовательскую функцию автозагрузки классов - spl_autoload_register().

//Product.php
class Product
{
    public function showName()
    {
        echo 'Товар1';
    }
}

//index.php
function autoload($class)
{
    include($class . '.php');
}
 
spl_autoload_register('autoload');
 
$product = new Product();
$product->showName();