这篇文章介绍的内容是关于php 文件的操作 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
虽说这是很基础的东西,惭愧的是我却对此并不是很了解。所以借此温故了一下
文件进行写操作的步骤打开这个文件。如果文件不存在,那么创建它。
创建文件锁,防止并发
将这些数据写入这个文件
释放锁,并且关闭文件句柄
文件进行读操作的步骤打开这个文件,如果不能打开就退出
从文件中读取数据
关闭这个文件
打开文件操作
fopen($filename,$mode,$include_path,$context)
打开失败返回false 打开成功则返回资源对象。属性名称作用$filename文件的路径(文件路径的间隔符用‘/’来表示,用’\’可能会导致linux不识别)
$mode文件访问的形式(写
$include_path(可选)从指定目录开始寻找文件所在位置
$context可选。规定文件句柄的环境。Context 是可以修改流的行为的一套选项。
注意:
- 当文件的前缀是ftp://即文件服务器时 该函数将会建立一个连接到指定服务器的被动模式。并返回一个指向文件开始位置的指针
- 当文件前缀是http://时,会建立一个到指定服务器的http连接,返回一个纸箱http响应的指针
- 在Linux时执行文件操作要注意服务器的权限配置。操作符模式名称意义r读模式打开文件从头开始
r+读写模式打开文件,从文件头开始读写
w只写模式打开文件,从文件头开始读写。如文件存在,清空文件内容,如不存在则穿件文件
w+读写模式同上
x谨慎写如果文件存在则返回false
x+谨慎写以读写方式打开文件,如果文件存在则返回false
a追加在文件末尾进行写操作
a+追加在文件末尾进行读写操作
写文件操作
A. 需要调用 fopen()函数1.`fwrite()`
描述 `int fwrite ( resource $handle , string $string [, int $length ] )`
$string 写入的字符
$length 限制写入的长度
B . 不需要调用fopen()函数1. file_put_contents()
描述 file_put_contents(file,data,mode,context)
相当于一句话执行
fopen(),fwrite(),fclose()
关闭文件fclose($fp)
如果成功返回true,反之false
读操作$fp = fopen('./test.php','a')//以只读方式打开
flock($fp,LOCK_SH);//读操作锁定
while(!feof($fp))
{
$order = fgets($fp);
echo $order
}
fclose($fp)//关闭文件
# feof($fp) //检测文件是否读取到文件结束标志
//文件读写的几种操作
/*读取一行内的文字*/
# fgets($fp) //获取文件一行字符
# (更加安全的操作,过滤了php和html标签)fgetss($fp,10,'')//三个参数 1.文件资源 2.限制每次获取的长度(如为0则不限制长度) 3.允许通过的标签
# fgetcsv($fp,0,"/t") 以"/t"为分隔符,分割我数组
/*读取整个文件*/
# (不需要fopen()操作) readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] ) //返回文件字符长度,!!!并且直接把内容输出到浏览器上
# fpassthru( resource $handle ) //返回boolean值
# file ( string $filename [, int $flags = 0 [, resource $context ]] )//把整个文件读入一个数组中,对每一行作为一个元素保存
/*读取一个字符*/
# fgetc()
/*读取任意长度字符*/
# fread($fp,$legth)
其他文件函数file_exists("路径"); //文件是否存在filesize("路径"); //文件大小unlink; //删除文件
文件锁
函数:`fclock($fp,’操作值’);//开启锁操作值意义LOCK_SH读操作锁定,可以共享,其他人可以读该文件
LOCK_EX写操作锁定,互斥锁
LOCK_UN释放已有的锁
LOCK_NB防止在请求枷锁时发生柱塞
虽说这是很基础的东西,惭愧的是我却对此并不是很了解。所以借此温故了一下
文件进行写操作的步骤打开这个文件。如果文件不存在,那么创建它。
创建文件锁,防止并发
将这些数据写入这个文件
释放锁,并且关闭文件句柄
文件进行读操作的步骤打开这个文件,如果不能打开就退出
从文件中读取数据
关闭这个文件
打开文件操作
fopen($filename,$mode,$include_path,$context)
打开失败返回false 打开成功则返回资源对象。属性名称作用$filename文件的路径(文件路径的间隔符用‘/’来表示,用’\’可能会导致linux不识别)
$mode文件访问的形式(写
$include_path(可选)从指定目录开始寻找文件所在位置
$context可选。规定文件句柄的环境。Context 是可以修改流的行为的一套选项。
注意:
- 当文件的前缀是ftp://即文件服务器时 该函数将会建立一个连接到指定服务器的被动模式。并返回一个指向文件开始位置的指针
- 当文件前缀是http://时,会建立一个到指定服务器的http连接,返回一个纸箱http响应的指针
- 在Linux时执行文件操作要注意服务器的权限配置。操作符模式名称意义r读模式打开文件从头开始
r+读写模式打开文件,从文件头开始读写
w只写模式打开文件,从文件头开始读写。如文件存在,清空文件内容,如不存在则穿件文件
w+读写模式同上
x谨慎写如果文件存在则返回false
x+谨慎写以读写方式打开文件,如果文件存在则返回false
a追加在文件末尾进行写操作
a+追加在文件末尾进行读写操作
写文件操作
A. 需要调用 fopen()函数1.`fwrite()`
描述 `int fwrite ( resource $handle , string $string [, int $length ] )`
$string 写入的字符
$length 限制写入的长度
B . 不需要调用fopen()函数1. file_put_contents()
描述 file_put_contents(file,data,mode,context)
相当于一句话执行
fopen(),fwrite(),fclose()
关闭文件fclose($fp)
如果成功返回true,反之false
读操作$fp = fopen('./test.php','a')//以只读方式打开
flock($fp,LOCK_SH);//读操作锁定
while(!feof($fp))
{
$order = fgets($fp);
echo $order
}
fclose($fp)//关闭文件
# feof($fp) //检测文件是否读取到文件结束标志
//文件读写的几种操作
/*读取一行内的文字*/
# fgets($fp) //获取文件一行字符
# (更加安全的操作,过滤了php和html标签)fgetss($fp,10,'')//三个参数 1.文件资源 2.限制每次获取的长度(如为0则不限制长度) 3.允许通过的标签
# fgetcsv($fp,0,"/t") 以"/t"为分隔符,分割我数组
/*读取整个文件*/
# (不需要fopen()操作) readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] ) //返回文件字符长度,!!!并且直接把内容输出到浏览器上
# fpassthru( resource $handle ) //返回boolean值
# file ( string $filename [, int $flags = 0 [, resource $context ]] )//把整个文件读入一个数组中,对每一行作为一个元素保存
/*读取一个字符*/
# fgetc()
/*读取任意长度字符*/
# fread($fp,$legth)
其他文件函数file_exists("路径"); //文件是否存在filesize("路径"); //文件大小unlink; //删除文件
文件锁
函数:`fclock($fp,’操作值’);//开启锁
操作值意义LOCK_SH读操作锁定,可以共享,其他人可以读该文件
LOCK_EX写操作锁定,互斥锁
LOCK_UN释放已有的锁
LOCK_NB防止在请求枷锁时发生柱塞相关推荐: