Зачем столько операторов if else elseif, если есть конструкция switch?
для красоты
Харб выдал что инклюды отличаются только реакцией на отсутсвие файла.
http://habrahabr.ru/post/55827/
рейтинг статьи -2. яснапанятна
Разницы в скорости никакой не замечал, есть разница только в выводе ошибок при подключении файлов. И {require | include}_once при работе проверяют был ли подключен уже файл или нет , если был подключен то заново подключать его не будет. А при require include файл будет подключаться независимо от того был уже подключен или нет.
Если в чем то не прав , с удовольствием услышу правильную версию.