basename> <filepro
Last updated: Mon, 29 Oct 2007

XL. Filesystem 文件系统函数

简介

需求

无需外部库文件就可以加入本扩展模块的支持。但如要使 PHP 在 Linux 上支持 LFS(大文件)的话,必须有最新的 glibc 并在编译时加入参数:-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

安装

本扩展模块作为 PHP 内核的一部分,无需安装即可使用。

运行时配置

这些函数的行为受 php.ini 的影响。

表88.文件系统和流配置选项

名称默认值可修改范围更新记录
allow_url_fopen"1"PHP_INI_SYSTEM在 PHP <= 4.3.4 时是 PHP_INI_ALL。PHP 4.0.4 版以后可用。
user_agentNULLPHP_INI_ALLPHP 4.3.0 版以后可用。
default_socket_timeout"60"PHP_INI_ALLPHP 4.3.0 版以后可用。
from""PHP_INI_ALL
auto_detect_line_endings"0"PHP_INI_ALLPHP 4.3.0 版以后可用。

以下是配置选项的简要解释。

allow_url_fopen boolean

本选项激活了 URL 形式的 fopen 封装协议使得可以访问 URL 对象例如文件。默认的封装协议提供用 ftp 和 http 协议来访问远程文件,一些扩展库例如 zlib 可能会注册更多的封装协议。

注意: 出于安全性考虑,此选项只能在 php.ini 中设置。

注意: 此选项是紧接着版本 4.0.3 发布后引进的。版本 4.0.3 以及之前的版本只能在编译时通过配置项 --disable-url-fopen-wrapper 来取消此特性。

警告

Windows 版在 PHP 4.3.0 之前,以下函数不支持远程文件访问:include()include_once(), require()require_once()Image中的 imagecreatefromXXX 函数。

user_agent string

定义 PHP 发送的 User-Agent。

default_socket_timeout integer

基于 socket 的流的默认超时时间(秒)。

注意: 本配置参数是 PHP 4.3.0 引进的。

from string

定义匿名 ftp 的密码(email 地址)。

auto_detect_line_endings boolean

当设为 On 时,PHP 将检查通过 fgets()file() 取得的数据中的行结束符号是符合 Unix,MS-DOS,还是 Macintosh 的习惯。

这使得 PHP 可以和 Macintosh 系统交互操作,但是默认值是 Off,因为在检测第一行的 EOL 习惯时会有很小的性能损失,而且在 Unix 系统下使用回车符号作为项目分隔符的人们会遭遇向下不兼容的行为。

注意: 本配置参数是 PHP 4.3.0 引进的。

资源类型

预定义常量

以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 PHP 中,或者在运行时被动态加载后才有效。

GLOB_BRACE (integer)
GLOB_ONLYDIR (integer)
GLOB_MARK (integer)
GLOB_NOSORT (integer)
GLOB_NOCHECK (integer)
GLOB_NOESCAPE (integer)
PATHINFO_DIRNAME (integer)
PATHINFO_BASENAME (integer)
PATHINFO_EXTENSION (integer)
FILE_USE_INCLUDE_PATH (integer)
FILE_APPEND (integer)
FILE_IGNORE_NEW_LINES (integer)
FILE_SKIP_EMPTY_LINES (integer)

参见

相关函数参见目录函数程序执行函数

有关可以用于远程文件的各种 URL 封装协议的说明列表,参见附录N, 支持的协议/封装协议列表

目录

basename 返回路径中的文件名部分
chgrp 改变文件所属的组
chmod 改变文件模式
chown 改变文件的所有者
clearstatcache 清除文件状态缓存
copy 拷贝文件
delete 参见 unlink()unset()
dirname 返回路径中的目录部分
disk_free_space 返回目录中的可用空间
disk_total_space 返回一个目录的磁盘总大小
diskfreespace disk_free_space() 的别名
fclose 关闭一个已打开的文件指针
feof 测试文件指针是否到了文件结束的位置
fflush 将缓冲内容输出到文件
fgetc 从文件指针中读取字符
fgetcsv 从文件指针中读入一行并解析 CSV 字段
fgets 从文件指针中读取一行
fgetss 从文件指针中读取一行并过滤掉 HTML 标记
file_exists 检查文件或目录是否存在
file_get_contents 将整个文件读入一个字符串
file_put_contents 将一个字符串写入文件
file 把整个文件读入一个数组中
fileatime 取得文件的上次访问时间
filectime 取得文件的 inode 修改时间
filegroup 取得文件的组
fileinode 取得文件的 inode
filemtime 取得文件修改时间
fileowner 取得文件的所有者
fileperms 取得文件的权限
filesize 取得文件大小
filetype 取得文件类型
flock 轻便的咨询文件锁定
fnmatch 用模式匹配文件名
fopen 打开文件或者 URL
fpassthru 输出文件指针处的所有剩余数据
fputcsv 将行格式化为 CSV 并写入文件指针
fputs fwrite() 的别名
fread 读取文件(可安全用于二进制文件)
fscanf 从文件中格式化输入
fseek 在文件指针中定位
fstat 通过已打开的文件指针取得文件信息
ftell 返回文件指针读/写的位置
ftruncate 将文件截断到给定的长度
fwrite 写入文件(可安全用于二进制文件)
glob 寻找与模式匹配的文件路径
is_dir 判断给定文件名是否是一个目录
is_executable 判断给定文件名是否可执行
is_file 判断给定文件名是否为一个正常的文件
is_link 判断给定文件名是否为一个符号连接
is_readable 判断给定文件名是否可读
is_uploaded_file 判断文件是否是通过 HTTP POST 上传的
is_writable 判断给定的文件名是否可写
is_writeable is_writable() 的别名
lchgrp Changes group ownership of symlink
lchown Changes user ownership of symlink
link 建立一个硬连接
linkinfo 获取一个连接的信息
lstat 给出一个文件或符号连接的信息
mkdir 新建目录
move_uploaded_file 将上传的文件移动到新位置
parse_ini_file 解析一个配置文件
pathinfo 返回文件路径的信息
pclose 关闭进程文件指针
popen 打开进程文件指针
readfile 输出一个文件
readlink 返回符号连接指向的目标
realpath 返回规范化的绝对路径名
rename 重命名一个文件或目录
rewind 倒回文件指针的位置
rmdir 删除目录
set_file_buffer stream_set_write_buffer() 的别名
stat 给出文件的信息
symlink 建立符号连接
tempnam 建立一个具有唯一文件名的文件
tmpfile 建立一个临时文件
touch 设定文件的访问和修改时间
umask 改变当前的 umask
unlink 删除文件


add a note add a note User Contributed Notes
Filesystem 文件系统函数
There are no user contributed notes for this page.

basename> <filepro
Last updated: Mon, 29 Oct 2007