Hallo Lactrik.
Wenn Du die Funktion auslagerst und per require lädst wenn die Variable entsprechend gesetzt ist, dann wird die Datei nur eingebunden wenn die Bedingung erfüllt ist (im Unterschied hierzu wird include immer ausgeführt.
Die Sache mit der Ladezeit dürfte kaum ins Gewicht fallen. Meist wird nur die Session zerstört, was sich in ein/zwei Zeilen abarbeiten lässt, d.h. diese Zeilen fallen bei der Abarbeitung der Seite ohne Logout kaum mehr auf.
Grüße aus Würzburg
Julian