Прочитал здесь: 
http://phpclub.ru/faq/PHP5/Autoload
что в  PHP5 перед  тем как создать объект несуществующего класса, идёт попытка вызова 
__autoload(), который должен попытаться подключить такой класс, которого на самом деле нету.
Вот в одной директории, у меня лежит 3 файла:
index.php
<?php
function __autoload($name){
include  $name.".class.php";
echo "Ищем класс $name";
}
$ob1 = new A();
$ob1->son();
$ob2 = new B();
$ob2->fanta();
?>
A.class.php
<?php
class A{
  public function son(){
      echo "<br />Вызвана функция <u>Сон</u>, класса <u>А</u>";
  }
}
?>
B.class.php
<?php
class A{
  public function fanta(){
      echo "<br />Вызвана функция <u>Fanta</u>, класса <u>B</u>";
  }
}
?>
Класс А находит, а класс В нет, как быть?