Phar::interceptFileFuncs

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

Phar::interceptFileFuncs指示 phar 拦截 fopen、file_get_contents、opendir 和所有与 stat 相关的函数

说明

final public static Phar::interceptFileFuncs(): void

指示 phar 拦截 fopen()readfile()file_get_contents()opendir() 和所有与 stat 相关的函数。如果这些函数中的任何一个在 phar 档案中使用相对路径调用,则调用会修改为访问 phar 档案中的文件。绝对路径被认为是尝试从文件系统加载外部文件。

此函数使能够将设计为在硬盘上运行的 PHP 应用程序作为 phar 应用程序运行。

参数

无参数。

返回值

示例

示例 #1 Phar::interceptFileFuncs() 示例

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

假设此 phar 位于 /path/to/myphar.phar 并且它包含 file.phpfile2.txt,如果 file.php 包含此代码

示例 #2 Phar::interceptFileFuncs() 示例

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

通常,PHP 会在当前目录中搜索 file2.txt,这将转换为 file.php 的目录,或者命令行用户的当前目录。 Phar::interceptFileFuncs() 指示 PHP 将当前目录视为 phar:///path/to/myphar.phar/,因此在上面的示例代码中打开了 phar:///path/to/myphar.phar/file2.txt

添加笔记

用户贡献的笔记

此页面没有用户贡献的笔记。
To Top