您的位置:首页 > 编程语言 > PHP开发

关于php的phar

2016-07-12 21:31 429 查看
自 PHP 版本 5.3.0 Phar 扩展成为了内置的组件

phar是一种类似于java的jar归档格式,这里我要提到的是phar 中文件、目录相关问题

如何判断phar中文件的是否存在呢,与普通文件系统一样,is_file也是有效的:

<?php
$pharPath='phar://D:\\test\\test.phar\\path\\to\\file.php';
var_dump(is_file($pharPath));


那么在phar中,__FILE__, __DIR__分表返回什么呢?

<?php
var_dump(__FILE__,
__DIR__,
is_file(__DIR__),
is_dir(__DIR__));
string(56) "phar://D:/xampp/htdocs/mvcjl/classpath/mvc.phar/test.php"
string(47) "phar://D:/xampp/htdocs/mvcjl/classpath/mvc.phar"
bool(false)
bool(true)


可以看到使用phar://协议时和使用本地文件夹一样,
__FILE__指向phar中的文件(phar协议)

__DIR__指向phar文件(phar协议)

phar://D:/xampp/htdocs/mvcjl/classpath/mvc.phar在phar协议下被视为一个文件夹,而不是文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  phar php 文件 文件夹