如果文件名包含多个点 (.),您可以通过以下代码(示例 1)保留其他部分。
示例 #1 (预期)
<?php
$filename = "abc.xyz.tar.gz";
$p = new PharData($filename);
$exts = explode('.', $filename);
array_shift($exts);
array_pop($exts);
$ext = implode('.', $exts);
$p->decompress($ext); # 结果文件名:abc.xyz.tar
?>
示例 #2 (可能不符合预期)
<?php
$filename = "abc.xyz.tar.gz";
$p = new PharData($filename);
$p->decompress($filename); # 结果文件名:abc.tar;xyz 被意外截断。
?>