html
(PHP 5 >= 5.3.2, PHP 7, PHP 8)
stream_resolve_include_path — Resolve filename against the include path
Resolve
filename
against the include path according to the same rules as
fopen()
/
include
.
filename
The filename to resolve.
Example #1 stream_resolve_include_path() example
Basic usague example.
<?php
var_dump
(
stream_resolve_include_path
(
"test.php"
));
?>
The above example will output something similar to:
string(22) "/var/www/html/test.php"
stream_resolve_include_path() seems to cache it's output. After I renamed a file, I had to restart Apache for stream_resolve_include_path() to not return non-existing file name. This was on Windows.
In some case lique this, you can't use `realpath()` or `file_exists()` without resolve its path.
Example:
file.php
subfolder/
..|- included.php
..|- subfolder/
.........|- another-included.php
file.php contens:
```<?php
var_dump(file_exists('subfolder/included.php'));// trueinclude'subfolder/included.php';
?>
```
subfolder/included.php contens:
```<?php
var_dump(file_exists('subfolder/another-included.php'));// false but the file is really exists.var_dump(file_exists(stream_resolve_include_path('subfolder/another-included.php')));// with `stream_resolve_include_path()` function, it returns true now.include'subfolder/another-included.php';// worquing fine, no errors.?>
```
subfolder/subfolder/another-included.php contens:
```<?php
echo'Hello world';
?>
```