require

(PHP 4, PHP 5, PHP 7)

require идентично include за исключением того, что при ошибке оно также выдаст фатальную ошибку уровня E_COMPILE_ERROR. Другими словами, она остановит выполнение скрипта, тогда как include только выдала бы предупреждение E_WARNING, которое позволило бы скрипту продолжить выполнение.

Смотрите документацию по include, чтобы узнать как это работает.

Коментарии

Remember, when using require that it is a statement, not a function. It's not necessary to write:
<?php
 
require('somefile.php');
?>

The following:
<?php
require 'somefile.php';
?>

Is preferred, it will prevent your peers from giving you a hard time and a trivial conversation about what require really is.
2007-06-19 20:06:58
http://php5.kiev.ua/manual/ru/function.require.html
Автор:
If your included file returns a value, you can get it as a result from require(), i.e.

foo.php:
<?php
return "foo";
?>

$bar = require("foo.php");
echo $bar; // equals to "foo"
2021-07-27 12:08:19
http://php5.kiev.ua/manual/ru/function.require.html
Always use __DIR__ to define path relative to your current __FILE__. 
(Or another setting that is originally based on __DIR__/__FILE__)

try & catch - don't get confused by the words "fatal E_COMPILE_ERROR" - it's still just an internal Error that implements Throwable - it can be caught:

<?php
try {
    require(
__DIR__ '/something_that_does_not_exist');
} catch (
\Throwable $e) {
    echo 
"This was caught: " $e->getMessage();
}
echo 
" End of script.";
?>

Note that this will still emit a warning "Failed to open stream: No such file or directory..." ...unless you prefix the require with "@" - which I strongly don't recommend as it would ignore/supress any diagnostic error (unless you have specified set_error_handler()). But even if you'd prefix the require with "@" it would still be caught.
2024-01-15 16:29:01
http://php5.kiev.ua/manual/ru/function.require.html

    Поддержать сайт на родительском проекте КГБ