PHP file://
简介
借助PHP中提供的内置包装器,各种URL风格的协议可以与文件系统函数一起使用。 `**stream_wrapper_register()**` 函数也可以用来定义自定义包装器。
PHP中的默认包装器是 `**file://**`,它代表本地文件系统。如果未显式使用其他协议,PHP解析器将其视为文件系统包装器。 提供给文件系统函数 `**fopen()**`、`**file_get_contents()**` 等的文件名参数默认使用 `**file://**` 协议。
当文件名不以正斜杠或反斜杠开头,或在Windows中不以驱动器号开头时,其路径将视为相对于当前目录。但是,在 `fopen()` 和 `file_get_contents()` 函数中,文件名可能会在 `**include_path**` 指令中提到的位置进行搜索。
`file://` 包装器支持同时进行读/写操作、创建和删除目录以及重命名文件。此外,文件访问不受 `**php.ini**` 配置设置中的 `**allow_url_fopen**` 指令的限制。
示例
文件名以不同的方式表示如下:
// **绝对路径**
$file=fopen("C:/xampp/php/test/test.txt","w");
// **相对路径** (假设当前工作目录是 c:\xampp\php,文件在 tst 子目录中打开)
$file=fopen("test/test.txt","w");
// **当前路径**。假设当前目录为 c:\xampp\php\test,则文件将在该目录中打开。
$file=fopen("test.txt","w");
// 使用 `**file://**` 协议表示绝对路径
$file=fopen("file:///c:/xampp/php/test/test.txt","w");
// 使用 `**file://**` 协议表示文档根目录中的文件
$file=fopen("file://127.0.0.1/test/test.txt","w");
广告