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();