Старый вопрос, но я укушу, так как на самом деле никто еще не ответил на настоящий вопрос.
Функция className () является конструктором в стиле PHP4 .
Функция __construct () является конструктором в стиле PHP5 .
Вы должны использовать последнее, потому что первое устарело и может быть удалено из языка.
Кроме того, первые могут или не могут игнорировать различные концепции OO PHP5, такие как операторы публичной / приватной видимости. Не то чтобы вы хотели сделать конструктор частным, если бы вы не использовали шаблоны Singleton или Factory.