Я предпочитаю 2-й, потому что таким образом «нормальный процесс» уже не на 1 уровень глубины из-за простой проверки. Я думаю, что PHP, вероятно, оптимизирует это так, что производительность не имеет значения, поэтому на данный момент это вопрос читабельности, и второй имеет для меня больше смысла («Не авторизован, перенаправление, выход») над упаковкой всей вашей логики в одну IF.