PHP 手册
后退 |  | 前进

# 附录 L. 支持的协议／封装协议列表

以下是 PHP 内置用于文件系统函数例如 fopen() 和 copy() 的 URL 风格协议列表。除了这些封装协议之外，从 PHP 4.3 起，还可以用 PHP 脚本和 stream_wrapper_register() 写自己的封装协议。

# 文件系统

所有版本的 PHP。自 PHP 4.3.0 以来明确使用 `file://`。

- `/path/to/file.ext`

- `relative/path/to/file.ext`

- `fileInCwd.ext`

- `C:/path/to/winfile.ext`

- `C:\path\to\winfile.ext`

- `\\smbserver\share\path\to\winfile.ext`

- `file:///path/to/file.ext`

`file://` 是 PHP 默认的描述本地文件系统的封装协议。指定相对路径 (相对路径名不开始于 /、\、\\ 或 Windows 盘符) 时，该路径是相对于当前的工作目录。在很多情况下工作目录就是当前执行的脚本所在的目录，除非它被改变。使用 CLI sapi 时，默认是调用该脚本时终端所处的目录。

某些函数，例如 fopen() 和 file_get_contents()，会自动搜索 include_path 作为相对路径。

表格 L-1. 封装协议摘要

属性 | 支持
--- | ---
受限于 allow_url_fopen。 | 否
允许读取 | 是
允许写入 | 是
允许附加 | 是
允许同时读写 | 是
支持 stat() | 是
支持 unlink() | 是
支持 rename() | 是
支持 mkdir() | 是
支持 rmdir() | 是

后退 | 起点 | 前进
资源类型列表 | 上一级 | Socket