It's bothered me for quite some time that a failed include emits a
warning. This is because it's by design that the author chose
`include` and not `require`. It's _expected_ that it may fail and they
are okay with that.
As an example, consider a classic autoloading case. It could be as
simple and performant as:
$file = /* something derived from class name */;
include $file;
But because of the warning, in practice authors tend to use
`file_exists` + require instead:
$file = /* something derived from class name */;
if (file_exists($file)) {
require $file;
}
Weird isn't it? Authors are using require instead of include for the
case where failure is tolerated. This is a clear signal to me that
include isn't doing its job. The warning gets in the way.
Any reasons we shouldn't just remove this warning for PHP 8?
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php