(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::interceptFileFuncs — Instrui phar a interceptar fopen, file_get_contents, opendir e todas as funções relacionadas a stat
Instrui o phar a interceptar fopen(), readfile(), file_get_contents(), opendir() e todas as funções relacionadas a stat. Se qualquer uma dessas funções for chamada de dentro de um arquivo phar com um caminho relativo, a chamada será modificada para acessar um arquivo dentro do arquivo phar. Caminhos absolutos são considerados tentativas de carregar arquivos externos do sistema de arquivos.
Esta função possibilita executar aplicações PHP projetadas para rodar em um disco rígido como uma aplicação PHAR.
Sem parâmetros.
Exemplo #1 Um exemplo de Phar::interceptFileFuncs()
<?php
Phar::interceptFileFuncs();
include 'phar://' . __FILE__ . '/file.php';
?>
Supondo que este phar esteja em /path/to/myphar.phar
e
contenha file.php
e
file2.txt
, se file.php
contiver este código:
Exemplo #2 Um exemplo de Phar::interceptFileFuncs()
<?php
echo file_get_contents('file2.txt');
?>
Normalmente, o PHP pesquisaria o diretório atual por file2.txt
,
que seria traduzido como o diretório de file.php ou o diretório atual de
um usuário de linha de comando. Phar::interceptFileFuncs() instrui
o PHP a considerar o diretório atual como phar:///path/to/myphar.phar/
e, assim, abre phar:///path/to/myphar.phar/file2.txt
no código
de exemplo acima.