W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::mount — 將外部路徑或文件掛載到 phar 存檔中的虛擬位置
final public static Phar::mount(string $pharPath, string $externalPath): void
與 unix 文件系統(tǒng)的概念非常相似,即將外部設(shè)備掛載到 目錄樹(shù),Phar::mount() 允許引用外部文件 和目錄,就好像它們?cè)诖鏅n中一樣。這允許強(qiáng)大的 抽象,例如引用外部配置文件,就好像它們是 在存檔中。
pharPath
phar 存檔中要用作掛載路徑位置的內(nèi)部路徑。 這必須是 phar 存檔中的相對(duì)路徑,并且不能已經(jīng)存在。
externalPath
要在 phar 存檔中掛載的外部文件或目錄的路徑或 URL
沒(méi)有回報(bào)。失敗時(shí)引發(fā) PharException。
如果掛載路徑出現(xiàn)任何問(wèn)題,則引發(fā) PharException。
示例 #1 A Phar::mount() example
以下示例演示如何訪問(wèn)外部配置文件,就好像它是 PHAR 存檔中的路徑。
首先,phar 存檔中的代碼:
<?php
$configuration = simplexml_load_string(file_get_contents(
Phar::running(false) . '/config.xml'));
?>
接下來(lái)是用于掛載配置文件的外部代碼:
<?php
// first set up the association between the abstract config.xml
// and the actual one on disk
Phar::mount('phar://config.xml', '/home/example/config.xml');
// now run the application
include '/path/to/archive.phar';
?>
另一種方法是將掛載代碼放在 phar 存檔的存根中。 下面是設(shè)置默認(rèn)值的示例 配置文件(如果未指定用戶配置):
<?php
// first set up the association between the abstract config.xml
// and the actual one on disk
if (defined('EXTERNAL_CONFIG')) {
Phar::mount('config.xml', EXTERNAL_CONFIG);
if (file_exists(__DIR__ . '/extra_config.xml')) {
Phar::mount('extra.xml', __DIR__ . '/extra_config.xml');
}
} else {
Phar::mount('config.xml', 'phar://' . __FILE__ . '/default_config.xml');
Phar::mount('extra.xml', 'phar://' . __FILE__ . '/default_extra.xml');
}
// now run the application
include 'phar://' . __FILE__ . '/index.php';
__HALT_COMPILER();
?>
...以及外部加載此 PHAR 存檔的代碼:
<?php
define('EXTERNAL_CONFIG', '/home/example/config.xml');
// now run the application
include '/path/to/archive.phar';
?>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: