• 20141227文件夹和文件操作二


    文件操作

    对文件里面的内容进行读写

    PHP5文件操作

    将文件的内容整个进行读取和写入

    读取文件

    file_get_contents:从一个指定的文件内读取数据内容。

    wpsBC86.tmp

    写入内容

    file_put_contents:将指定的字符串写入到对应的文件

    wpsBC97.tmp

    注意:file_put_contents如果要写入的文件不存在,系统会自动创建,有的话就直接写入

    默认的file_put_contents写入数据的时候,会先清空数据再写入

    如果要在文件后面追加内容:应该使用file_put_contents的第三个参数

    FILE_USE_INCLUDE_PATH:先清空文件,再重新写入(默认的)

    FILE_APPEND:追加数据到文件末尾

    wpsBC98.tmp

    file操作

    file就是将一个文件里面的内容,逐行取出,存放到一个数组的元素里,返回一个数组

    wpsBCA8.tmp

    PHP4文件操作

    php5以前文件的操作,与文件夹一样,都是通过资源的形式进行操作

    1. 获取文件资源

    fopen:打开一个文件资源

    wpsBCA9.tmp

    如果是通过资源形式去操作文件的话,那么必须在打开文件的时候,就指定操作模式。

    wpsBCAA.tmp

    只读模式打开

    wpsBCBB.tmp

    2. 读取文件内容

    fgetc:c代表character,一次读取一个字符

    fgets:s代表string,代表可以读取多个字符,取决于指定的读取长度或者是否碰到换行(最多只能读取一行数据)

    两个函数都是对当前资源指针进行操作,读取之后都会将指针下移

    wpsBCBC.tmp

    fread:获取指定长度的数据直到文件结束

    wpsBCCC.tmp

    遍历文件

    wpsBCCD.tmp

    3. 修改文件(写)

    fwrite:向文件资源指针所在的位置写入数据,写东西不会将当前位置已有的东西往后移,而是会覆盖

    fputs:fwrite别名

    wpsBCCE.tmp

    没有办法在指定的中间位置去写入内容,只能覆盖内容

    文件指针移动

    fseek:将指针指定到对应的位置

    wpsBCDF.tmp

    4. 释放资源

    fclose:使用对应的文件资源

    wpsBCE0.tmp

    文件操作相关函数

    copy:复制

    unlink:删除文件

    rename:重命名文件

    filemtime:m代表modify,文件最后被修改的时间

    filesize:文件大小(字节)

    fileperms:文件权限(Linux下的八进制)

    wpsBCE1.tmp

    简单文件操作

    1. 文件下载

    服务器的文件被下载到浏览器端所在的电脑。

    HTML的a标签实现下载:a标签中如果出现了浏览器不能识别的文件的(URL),浏览器就会认为是文件(附件),形成文件下载

    wpsBCF2.tmp

    php实现文件下载

    php需要修改一个http响应头(http协议)

    header("Content-type: application/octet-stream"):服务器给浏览器的内容是二进制流式文件,

    header("Content-Disposition: attachment; filename=filename"):告诉浏览器当前数据不需要解析,是附件,本地保存的时候建议使用的文件名字是filename

    wpsBCF3.tmp

    PHP实现下载的好处

    1. 隐藏真实文件的路径,防止别人攻击

    2. 隐藏文件的真实内容

    作业:

    1. 做一个统计网站:如果一个用户去请求对应的脚本文件,记住当前用户的ip地址,访问时间,写入到对应的统计文件(一个用户的一次访问占一行);当用户访问的时候,提示当前用户是第几次访问,是第几个访客;

  • 相关阅读:
    centos7下编译安装python3.7,且与python2.7.5共存
    Linux下的ctrl常用组合键
    命令 docker rm | docker rmi | docker prune 的差异
    docker操作命令大全和后台参数
    解决Linux下ssh登录后出现 报错 Write failed: Broken pipe 的方法
    在centos7 中docker info报错docker bridge-nf-call-iptables is disabled 的解决方法
    Linux下实现不活动用户登录超时后自动登出
    centos下非yum方式安装docker环境
    Git Error:There is no tracking information for the current branch.
    Vim操作:打开文件
  • 原文地址:https://www.cnblogs.com/lifushan/p/6430911.html
Copyright © 2020-2023  润新知