$alias在PharData::__construct()中的作用是什么,以及如何正确跳过这个参数


What is $alias in PharData::__construct() for, and how to correctly skip this parameter?

PharData构造函数声明如下:

PharData::__construct ( string $fname [, int $flags [, string $alias [, int $format = Phar::TAR ]]] )

$alias文件如下:

在调用流功能时引用该Phar归档文件的别名。

  • 这是什么意思,它的用例是什么?
  • 如果我想定义$format,但不定义$alias,如何最好地跳过此参数?我应该传递一个空字符串,还是NULL ?

$alias为可选参数。它的目的是允许以后访问phar内容,而不需要完整的.phar路径或文件名。通常对于自包含的phar,您可能希望将其映射为可重定位的,例如phar://myphar/script1.php

您可以只传递NULL或一个空字符串来跳过此参数。在phar.c中,注册别名之前的主要测试只是字符串长度:
https://github.com/php/php-src/blob/master/ext/phar/phar.c自