require() entspricht im Wesentlichen include(), wirft aber im Fehlerfall einen E_ERROR Fehler. Es beendet also die Programmausführung während include() nur eine Warnung (E_WARNING) generiert und so die weitere Programmausführung gestattet.
Weitere Informationen hierzu finden Sie in der include()-Dokumentation.