(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::interceptFileFuncs — Ordenar a phar interceptar fopen, file_get_contents, opendir, y todas las funciones relacionadas con estadísticas
Ordena a phar interceptar fopen(), readfile(), file_get_contents(), opendir(), y todas las funciones relacionadas con estadísticas. Si cualquiera de estas tres funciones es llamada desde dentro de un archivo phar con una ruta relativa, la llamada es modificada para acceder al fichero dentro del archivo phar. Se asume que las rutas absolutas son intentos para cargar ficheros externos desde el sistema de ficheros.
Esta función hace posible ejecutar aplicaciones de PHP diseñadas para ejecutarse desde un disco duro como una aplicación phar.
No tiene parámetros.
Ejemplo #1 Un ejemplo de Phar::interceptFileFuncs()
<?php
Phar::interceptFileFuncs();
include 'phar://' . __FILE__ . '/fichero.php';
?>
Se asume que este phar está en /ruta/a/miphar.phar
y que
contiene fichero.php
y
fichero2.txt
, si fichero.php
contiene este código:
Ejemplo #2 Un ejemplo de Phar::interceptFileFuncs()
<?php
echo file_get_contents('fichero2.txt');
?>
Normalmente, PHP buscará fichero2.txt
en el directorio actual,
que traducirá como el directorio del fichero.php, o el direcotorio actual de
un usuario de la línea de comandos. En el código del ejemplo anterior,
Phar::interceptFileFuncs() ordena a PHP que considere
el directorio actual como phar:///ruta/a/miphar.phar/
y por lo tanto abra phar:///ruta/a/miphar.phar/fichero2.txt
.