PHP 8.5.0 Alpha 2 available for testing

Phar::interceptFileFuncs

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

Phar::interceptFileFuncsIndica a phar que debe interceptar las funciones de archivos

Descripción

final public static Phar::interceptFileFuncs(): void

Indica a phar que debe interceptar fopen(), readfile(), file_get_contents(), opendir() y todas las funciones relativas a stat. Si cualquiera de estas funciones es llamada desde el archivo phar con una ruta relativa, la llamada es modificada para acceder a un archivo dentro del archivo. Las rutas absolutas se asumen como intentos de carga de archivos externos desde el sistema de archivos.

Esta función permite la ejecución de aplicaciones PHP diseñadas para ser lanzadas fuera de un disco duro, como aplicación phar.

Parámetros

No se proporcionan argumentos.

Valores devueltos

Ejemplos

Ejemplo #1 Ejemplo con Phar::interceptFileFuncs()

<?php
Phar
::interceptFileFuncs();
include
'phar://' . __FILE__ . '/fichero.php';
?>

Suponiendo que este phar se llama /ruta/hacia/monphar.phar y contiene fichero.php y fichero2.txt, si fichero.php contiene este código:

Ejemplo #2 Un ejemplo con Phar::interceptFileFuncs()

<?php
echo file_get_contents('fichero2.txt');
?>

Normalmente, PHP buscaría en el directorio actual el archivo llamado file2.txt, es decir, en el directorio de fichero.php o el directorio actual del usuario de la línea de comandos. Phar::interceptFileFuncs() indica a PHP que considere phar:///ruta/hacia/monphar.phar/ como directorio actual y así abre en el ejemplo anterior el archivo phar:///ruta/hacia/monphar.phar/fichero2.txt.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top