Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从Phar归档中访问外部文件?_Php_Phar - Fatal编程技术网

Php 如何从Phar归档中访问外部文件?

Php 如何从Phar归档中访问外部文件?,php,phar,Php,Phar,我需要将配置文件放在web应用程序的phar之外。我需要安装它。在我的存根文件中,我尝试了: <?php try { Phar::mount('sites/site.php', __DIR__.'/../sites/site.php'); } catch (PharException $e) { print_r($e); }; Phar::mapPhar(); include '../app.phar'; 您是否尝试使用内部phar uri作为安装点,如: Phar::

我需要将配置文件放在web应用程序的phar之外。我需要安装它。在我的存根文件中,我尝试了:

<?php
try {
    Phar::mount('sites/site.php', __DIR__.'/../sites/site.php');
} catch (PharException $e) {
    print_r($e);
};
Phar::mapPhar();
include '../app.phar';

您是否尝试使用内部phar uri作为安装点,如:

 Phar::mount('phar://sites/site.php', __DIR__.'/../sites/site.php');
另外,我不知道问题是否是由于
站点
子目录造成的,您是否尝试过:

 Phar::mount('site.php', __DIR__.'/../sites/site.php');

您是否尝试过用反斜杠更改斜杠
\
?既然你在windows上?甚至更进一步:您是否考虑过使用常量来确保您是操作系统独立的?@b.enoit.be Windows接受这两种方法‍‍<代码>/‍和`\`作为目录分隔符。在Linux上,这不起作用。问题是
\uuuu DIR\uuuu
,它转换为
phar:///var/www/....
。如果我只使用完整路径(
/var/www/…
),那么挂载工作正常。是的,没有帮助。相同的错误?你能在这里粘贴完整的PHP错误日志吗?