include допускает появление предупреждения, поэтому остальная часть сценария будет по-прежнему выполняться.require вызывает фатальную ошибку, которая немедленно останавливает выполнение.Обычно это приводит к созданию полностью пустой страницы с выводимым описанием ошибки.На мой взгляд, require_once наиболее удобен, особенно если у вас есть скрипт внутри скрипта внутри скрипта, потому что при многократном определении функций выдается фатальная ошибка.Я лично предпочитаю require_once (), потому что он предотвращает распространение php-кода в HTML, чтобы пользователь мог видеть
Вот несколько примеров
Condition: file test.php does not exist
Использование include ():
<?php
include("test.php");
print "<p>Hey This String Still Prints Dude!</p>";
?>
Результат:
Warning: include(test.php) [function.include]: failed to open
stream: No such file or directory in
/home/webspotm/public_html/error/index.php on line 2
Warning: include() [function.include]: Failed opening 'test.php'
for inclusion (include_path='.:/home/webspotm/.imports')
in /home/webspotm/public_html/error/index.php on line 2
Hey This String Still Prints Dude!
Использование require ():
<?php
require("test.php");
print "<p>Yea don't even try, this code ain't gonna show!</p>";
?>
Результат:
Warning: require(test.php) [function.require]:
failed to open stream: No such file or directory in
/home/webspotm/public_html/error/index.php on line 2
Fatal error: require() [function.require]: Failed opening
required 'test.php' (include_path='.:/home/webspotm/.imports') in
/home/webspotm/public_html/error/index.php on line 2