Зачем нужен объект контролера halt()?
По моему воспользоваться пэхэпэшными функциями на прямую, короче по символам и для системы меньше операций… или здесь кроются какие-то подводные камни?
Ничем ровным счетом. Скорее сделана для большей гибкости и с заделом на будущее. Означает прерывание работы контроллера. Её можно, к примеру, переопределить в своем контроллере и выполнять в ней какие-то действия перед завершением работы.Чем лучше использовать объект halt(), чем просто die() или exit()?