(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::createDefaultStub — 创建 phar 文件格式特定的存根
$index
= null
, ?string $webIndex
= null
): string此方法用于创建 phar 文件格式特定的存根,不适用于基于 tar 或 zip 的 phar 归档文件。
Phar 归档文件包含一个引导加载器或 stub
,它用 PHP 编写,当归档文件在 PHP 中通过 include 执行时,该加载器会被执行
<?php
include 'myphar.phar';
?>
php myphar.phar
此方法提供了一种简单易用的方法来创建存根,该存根将从 phar 归档文件中运行启动文件。此外,可以为从命令行访问 phar 归档文件和通过 web 服务器访问 phar 归档文件指定不同的文件。加载器存根还会调用 Phar::interceptFileFuncs() 以便于捆绑访问文件系统的 PHP 应用程序。如果不存在 phar 扩展,加载器存根将提取 phar 归档文件到临时目录,然后操作文件。退出时,一个关闭函数会清除临时文件。
index
在命令行访问时运行的 phar 归档文件中的相对路径
webIndex
通过 web 浏览器访问时运行的 phar 归档文件中的相对路径
返回一个字符串,其中包含自定义引导加载器(存根)的内容,该加载器允许创建的 Phar 归档文件在启用了或未启用 Phar 扩展的情况下工作。
如果任一参数的长度超过 400 字节,则抛出 UnexpectedValueException。
版本 | 描述 |
---|---|
8.0.0 |
index 和 webIndex 现在可为空。 |
示例 #1 Phar::createDefaultStub() 示例
<?php
try {
$phar = new Phar('myphar.phar');
$phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
} catch (Exception $e) {
// 处理错误
}
?>