PHP基础(016)---文件处理
在PHP编程中,经常要对数据进行处理,可以采用数据库和文本两种方式存储数据。
一)文件处理分3步:
- 打开文件 fopen()
- 读取文件
- 从文件中读取数据:
- readfile() ---不需要打开/关闭文件,不需要echo/print等输出语句
-
-
- file() ---常与foreach一起使用
- file_get_contents()
- 读取一行数据
- fgets() ---用于一次读取一行数据
- fgetss() ---用于读取一行数据,同时fgetss()函数会过滤掉被读取内容中的html和php标记。也可使用allowable_tags参数来控制哪些标记不被过滤。
- 读取一个字符
- fgetc()
- 读取任意长度的字串
- fread()
-
- 将数据写入文件
- fwrite() ---要与fopen(),fclose()一起使用
- file_put_contents() ---单独使用即可达到上面3个函数同样的效果
- 关闭文件fclose()
二)操作文件函数
- copy()
- rename()
- unlink()
- fileatime()
- filemtime()
- filesize()
- pathinfo()
- realpath() ---返回绝对路径
- stat()
- 略...
三)目录处理同样分3步
- 打开目录
- opendir()
- 浏览目录
- scandir() ---与foreach一起使用
- 关闭目录
- closedir()
四)操作目录
- mkdir() ---新建一个指定目录
- rmdir() ---删除空的目录
- getcwd()---取得当前工作的目录
- chdir() ---改变当前目录为directory
- disk_free_space()
- disk_total_space()
- readdir()
- rewinddir() ---将指定的目录重新指定到目录的开头
- 略...
五)文件处理的高级应用:
- 远程文件的访问
- fopen() ---修改php.ini里面的allow_url_fopen这一行,将该行选项设为ON.
- 文件指针
- feof() ---测试指针是否到了文件的结束的位置
- ftell() ---返回当前指针的位置
- fseek() ---实现文件指针的定位
- rewind() ---将文件handle的指针设为文件流的开头
- 略...
- 锁定文件
- flock() ---参数值 :LOCK_SH(取得共享锁定),LOCK_EX(取得独占锁定),LOCK_UN(释放锁定),LOCK_NB(防止flock()在锁定时堵塞
- 文件上传
- 相关php.ini的设置
- file_uploads = ON
- upload_tmp_dir
- upload_max_filesize = 2MB
- max_execution_time (秒)
- memory_limit(MB)
- 预定义变量: $_FILES
- 文件上传函数 : move_uploaded_file()
- 多文件上传 : move_uploaded_file + for循环
- 相关php.ini的设置
浙公网安备 33010602011771号