位置: 编程技术 - 正文

php 目录与文件处理-郑阿奇(续)(php显示文件目录及路径)

编辑:rootadmin
1.文件目录操作 最顶层止录是磁盘根目录,用'/'或'//' 当前目录 ./ ../表示apache的目录即htdocs目录 1.创建与删除目录 mkdir 2.获取和更改当前目录 使用getcwd()函数可以取得当前的工作目录,该函数没有参数。成功则返回当前的工作目录,失败则返回FALSE 3.打开和关闭目录句柄 opendir($dir) closed($dir_handle) 4.读取目录内容 readdir(),该参数是一个已经打开的目录句柄,与while循环可以实现对目录的遍历 5.获取指定路径中的目录与文件 。 array scandir(string $directory [, int $sorting_order [, resource $context ]]) 说明:$directory为指定路径。参数$sorting_order默认是按字母升序排列,如果设为1表示按字母的降序排列。 $context是可选参数,是一个资源变量,可以用stream_context_create()函数生成,这个变量保存着与具体的操作对象有关的一些数据。 函数运行成功则返回一个包含指定路径下的所有目录和文件名的数组,失败则返回FALSE 2.操作文件的一般方法 3.文件的打开与关闭 1.打开文件 resource fopen(string $filename , string $mode [, bool $use_include_path [, resource $context ]]) ●$filename参数。fopen()函数将$filename参数指定的名字资源绑定到一个流上 ●$mode参数。$mode参数指定了fopen()函数访问文件的模式,取值见表4.5。 $mode 说 明 'r' 只读方式打开文件,从文件头开始读 'r+' 读写方式打开文件,从文件头开始读写 'w' 写入方式打开文件,将文件指针指向文件头。如果文件已经存在则删除已有内容,如果文件不存在则尝试创建它 'w+' 读写方式打开文件,将文件指针指向文件头。如果文件已经存在则删除已有内容,如果文件不存在则尝试创建它 'a' 写入方式打开文件,将文件指针指向文件末尾,如果文件已有内容将从文件末尾开始写。如果文件不存在则尝试创建它 'a+' 读写方式打开文件,将文件指针指向文件末尾。如果文件已有内容将从文件末尾开始读写。如果文件不存在则尝试创建它 'x' 创建并以写入方式打开文件,将文件指针指向文件头。如果文件已存在,则fopen()调用失败并返回FALSE,并生成一条E_WARNING级别的错误信息。如果文件不存在则尝试创建它。此选项被PH及以后的版本所支持,仅能用于本地文件 'x+' 创建并以读写方式打开文件,将文件指针指向文件头。如果文件已存在,则fopen()调用失败并返回FALSE,并生成一条E_WARNING级别的错误信息。如果文件不存在则尝试创建它。此选项被PH及以后的版本所支持,仅能用于本地文件 'b' 二进制模式,用于连接在其他模式后面。如果文件系统能够区分二进制文件和文本文件(Windows区分,而UNIX不区分),则需要使用到这个选项,推荐一直使用这个选项以便获得最大程度的可移植性 ●$use_include_path参数。如果需要在include_path(PHP的include路径,在PHP的配置文件设置)中搜寻文件, 可以将可选参数 $use_include_path的值设为1或TRUE,默认为FALSE。 ●$context参数。可选的$context参数只有文件被远程打开时(如通过HTTP打开)才使用,它是一个资源变量, 其中保存着与fopen()函数具体的操作对象有关的一些数据。如果fopen()打开的是一个HTTP地址, 那么这个变量记录着HTTP请求的请求类型、HTTP版本及其他头信息;如果打开的是FTP地址, 记录的可能是FTP的被动/主动模式 2.关闭文件 bool fclose(resource $handle) 4.文件的写入 文件写入前需打开文件,不存在先创建它,一般用fopen()函数创建 ●fwrite().文件打开后,向文件写入内容 int fwrite(resource $handle , string $string [, int $length ]) 说明:参数$handle是写入的文件句柄, $string是将要写入文件中的字符串数据, $length是可选参数,如果指定了$length,则当写入了$string中的前$length个字节的数据后停止写入。 ●file_put_contents()函数。PHP 5还引入了file_put_contents()函数。这个函数的功能与依次调用fopen()、fwrite()及fclose()函数的功能一样。语法格式如下: int file_put_contents(string $filename , string $data [, int $flags [, resource $context ]]) 说明:$filename是要写入数据的文件名。 $data是要写入的字符串,$data也可以是数组,但不能为多维数组。 在使用FTP或HTTP向远程文件写入数据时,可以使用可选参数$flags和$context,这里不具体介绍。 写入成功后函数返回写入的字节数,否则返回FALSE。 ●fputcsv()函数。CSV是一种比较常用的文件格式,一般以.csv作为扩展名。CSV格式把文件的一行看做是一条记录,记录里的字段使用逗号分隔。 在PHP中使用 fputcsv()函数可以把指定的数组格式化为符合CSV文件格式的内容,并写入文件指针指向的当前行。语法格式如下: int fputcsv(resource $handle [, array $fields [, string $delimiter [, string $enclosure ]]]) 说明:参数$handle是要写入的文件句柄。 参数$fields是要格式化的数组。 可选的$delimiter参数用于设定字段分界符(只允许一个字符),默认为逗号。 可选的$enclosure参数设定字段环绕符(只允许一个字符),默认为双引号 5 文件的读取 1.读取任意长度 fread()函数可以用于读取文件的内容,语法格式如下: string fread(int $handle, int $length) 说明:参数$handle是已经打开的文件指针, $length是指定读取的最大字节数,$length的最大取值为。 如果读完$length个字节数之前遇到文件结尾标志(EOF),则返回所读取的字符,并停止读取操作。 如果读取成功则返回所读取的字符串,如果出错返回FALSE。 注意:在读取文件后显示文件内容时,文本中可能含有无法直接显示的字符,如HTML标记。 这时需要使用htmlspecialchars()函数将HTML标记转化为实体才能显示文件中的字符。 2.读取整个文件 ●file()函数。file()函数用于将整个文件读取到一个数组中,语法格式如下: array file(string $filename [, int $use_include_path [, resource $context ]]) 说明:本函数的作用是将文件作为一个数组返回,数组中的每个单元都是文件中相应的一行,包括换行符在内, 如果失败则返回FALSE。参数$filename是读取的文件名,参数$use_inclue_path和$context的意义与之前介绍的相同 ●readfile()函数。readfile()函数用于输出一个文件的内容到浏览器中,语法格式如下: int readfile(string $filename [, bool $use_include_path [, resource $context ]]) ●fpassthru()函数。fpassthru()函数可以将给定的文件指针从当前的位置读取到EOF,并把结果写到输出缓冲区。 要使用这个函数,必须先使用fopen()函数打开文件,然后将文件指针作为参数传递给fpassthru()函数, fpassthru()函数把文件指针所指向的文件内容发送到标准输出。如果操作成功返回读取到的字节数,否则返回FALSE。 ●file_get_contents()函数。file_get_contents()函数可以将整个或部分文件内容读取到一个字符串中, 功能与依次调用fopen()、fread()及fclose()函数的功能一样。语法格式如下: string file_get_contents(string $filename [, int $offset [, int $maxlen ]]) 说明:$filename是要读取的文件名,可选参数$offset可以指定从文件头开始的偏移量, 函数可以返回从$offset所指定的位置开始长度为$maxlen的内容。如果失败,函数将返回FALSE 3. 读取一行数据 ●fgets()函数。fgets()函数可以从文件中读出一行文本,语法格式如下: string fgets(int $handle [, int $length ]) 说明:$handle是已经打开的文件句柄,可选参数$length指定了返回的最大字节数,考虑到行结束符, 最多可以返回length-1个字节的字符串。如果没有指定$length,默认为个字节 ●fgetss()函数与fgets()基本相同,不过fgetss()函数会尝试从读取的文本中去掉任何html和php标记。 ●fgetcsv()函数。fgetcsv()函数可以读取指定文件的当前行,使用CSV格式解析出字段,并返回一个包含这些字段的数组。 语法格式如下: array fgetcsv(int $handle [, int $length [, string $delimiter [, string $enclosure ]]]) 4. 读取一个字符 fgetc()函数。fgetc()函数可以从文件指针处读取一个字符,语法格式为: string fgetc(resource $handle) 该函数返回$handle指针指向的文件中的一个字符,遇到EOF则返回FALSE 5. 使用指定格式读取文件 fscanf()函数。fscanf()函数可以读取文件中的数据,并根据指定的格式进行格式化,并返回一个数组。语法格式如下: mixed fscanf(resource $handle , string $format [, mixed &$... ]) 格式字符串中的任何空白会与输入流中的任何空白匹配。 这意味着甚至格式字符串中的制表符“t”也会与输入流中的一个空格字符匹配。 6.文件的上传与下载 1.文件上传 文件上传可以通过提交html表单来实现。文件上传结束后,默认存储在临时目录中,这时必须从临时目录中删除或移动到其他地方 使用PHP的move_uploaded_file()将其移到其它位置上 move_uploaded_file()函数语法格式如下: bool move_uploaded_file(string $filename , string $destination) 注意:在将文件移动之前需要检查文件是否是通过HTTP POST上传的,这可以用来确保恶意的用户无法欺骗脚本去访问本不能访问的文件, 这时需要使用is_uploaded_file()函数。该函数的参数为文件的临时文件名,若文件是通过HTTP POST上传的,则函数返回TRUE。 例4.5 将由HTML表单上传的GIF图片文件移动到html目录中 2.文件下载 header()函数的作用是向浏览器发送正确的HTTP报头,报头指定了网页内容的类型、页面的属性等信息。 header()函数的功能很多,这里只列出以下几点: ●页面跳转。如果header()函数的参数为“Location: xxx”,页面就会自动跳转到“xxx”指向的URL地址。例如: header("Location: //跳转到百度页面 header("Location: first.php"); //跳转到工作目录的first.php页面 ●指定网页内容。例如,同样的一个XML格式的文件,如果header()函数的参数指定为“Content-type: application/xml”, 浏览器会将其按照XML文件格式来解析。但如果是“Content-type: text/xml”,浏览器就会将其看做文本解析。 header()函数结合readfile()函数可以下载将要浏览的文件 7.其他常用文件函数 1.计算文件大小 filesize()函数用于计算文件的大小,以字节为单位 filesize()函数结合fread()函数可以实现一次读取整个文件 2.判断文件是否存在 file_exits() is_dir()函数用于判断给定文件名是否是目录 is_file()函数用于判断给定文件名是否是文件。 is_readable()函数用于判断给定文件是否可读。 is_writeable()用于判断给定的文件是否可写 3.删除文件 unlink() 4.复制文件 bool copy(string $source,string $dest),如果目示文件已存在,则将被覆盖 5.移动、重命名文件 除了move_uploaded_file()函数,还有一个rename()函数也可以移动文件。 语法格式如下: bool rename ( string $oldname , string $newname [, resource $context ] ) 说明:rename()函数主要用于对一个文件进行重命名,$oldname是文件的旧名,$newname为新的文件名。 当然,如果$oldname与$newname的路径不相同,就实现了移动该文件的功能 6.文件指针操作 PHP中有很多操作文件指针的函数,如rewind()、ftell()、fseek()函数等。之前用过的feof()函数用于测试文件指针是否处于文件尾部, 也属于文件指针操作函数。 rewind()函数。用于重置文件的指针位置,使指针返回到文件头。它的参数只有一个,就是已经打开的指定文件的文件句柄。 ftell()函数。可以以字节为单位,报告文件中指针的位置,也就是文件流中的偏移量。它的参数也是已经打开的文件句柄。 fseek()函数。可以用于移动文件指针,语法格式如下: int fseek ( resource $handle , int $offset [, int $whence ] ) 例4.8 投票统计

推荐整理分享php 目录与文件处理-郑阿奇(续)(php显示文件目录及路径),希望有所帮助,仅作参考,欢迎阅读内容。

php 目录与文件处理-郑阿奇(续)(php显示文件目录及路径)

文章相关热门搜索词:php目录结构,footer.php文件目录,php当前目录,php目录列表,php目录操作,php目录列表,php文件目录树,php文件目录树,内容如对您有帮助,希望把文章链接给更多的朋友!

php 日期和时间的处理-郑阿奇(续) 1.UNIX时间戳phpd处理数据,特别是对数据库中时间类型数据进行格式化时,需先将时间类型的数据转化为UNIX时间戳进行处理。不同的数据库系统对时间

php高级编程-函数-郑阿奇 1.php函数1.用户自定义函数function函数名字([$parameter,[,…]]){//函数代码}注意:函数名不能与系统函数或用户已经定义的函数重名。$parameter为函数参数,

php与mysql建立连接并执行SQL语句的代码 今天写了一个小程序,很小很小,只不过是能够建立php与mysql的链接,并且实现简单的SQL语句。新手初试,还请各路高手多多指导。程序源代码如下:?ph

标签: php显示文件目录及路径

本文链接地址:https://www.jiuchutong.com/biancheng/284609.html 转载请保留说明!

上一篇:第4章 数据处理-php正则表达式-郑阿奇(续)(第4章 数据处理思维导图)

下一篇:php 日期和时间的处理-郑阿奇(续)(php时间计算)

  • 税率3%变成10%
  • 关税是价内税还是税外税
  • 劳务公司一般纳税人可以抵扣进项税吗
  • 私车公用如何避税
  • 每年税务师考试几次
  • 甲供材入账
  • 公共汽车出租车
  • 净营业周期和营业周期
  • 已经作为损失的资产以后纳税年度收回的会计处理
  • 工资代扣工会会费
  • 淘宝发票收取的税点是谁来交
  • 扣缴义务人怎么删除
  • 劳务公司开票税收分类
  • 其他应收款账目
  • 房产原值怎么计算房产面积
  • 机动车临时号牌有效期多久
  • 2018年所得税率
  • 企业收到票据背书转让给其他公司怎么做会计处理?
  • 非增值税纳税人有哪些
  • 增值税发票委托公司开具
  • 员工基本养老保险缴纳比例
  • 房地产企业预收账款
  • 税局定额的标准
  • 转出未交增值税在借方是什么意思
  • 外购集体福利用交税吗
  • 公司的电话费计入什么科目
  • 已收款未发货会计分录
  • 汽车行业返利账务处理
  • 未开票收入缴纳增值税怎么冲减补开发票
  • 资产减值损失汇算清缴需要调增嘛?
  • php file_get_contents 读取图片
  • 没有桌面和任务栏怎么办
  • php字符串函数有哪些
  • 发生销售折让怎么办
  • 会计凭证应该怎么写
  • 如何失业保险金
  • 税务行政罚款会罚多少
  • 乐观锁用法
  • css选择器 菜鸟教程
  • 定期定额户个人经营所得
  • java pdf生成工具
  • 小微企业免征增值税政策2023
  • yolov5训练自己的模型配置到单片机
  • 拖欠工程款利息的司法解释
  • 财政补贴收入账务处理
  • 增值税退税流程怎么操作
  • 年终奖不属于工资有法律依据吗
  • myeclipse配置数据库连接
  • 长期股权投资投资损益的确认
  • 产品出口认证
  • 现金不够老板垫钱怎么办
  • 预付账款的账务处理视频教程
  • 公司购买的车辆
  • 三方抵账协议做什么科目
  • 销售怎么写啊
  • sql自定义数据类型
  • centos6.2安装教程
  • linux系统讲解
  • freebsd使用
  • win10预览版21301bug
  • dos破解密码输入什么
  • mac怎么设置默认打开方式
  • ghost硬盘对拷反了
  • ubuntu切换登录用户
  • windows7hosts文件
  • win8怎么把任务栏变成透明
  • WIN10系统更新文件在哪里
  • 校园网升级套餐
  • cocos lua教程
  • 在机上创建一个文件夹
  • dos命令查看
  • shell脚本实战
  • python的五个特点
  • delphi7教程
  • 广东省为什么电不够用
  • 专项调查法
  • 福利费是否计入成本费用
  • 开发商代收代缴电费能开发票吗
  • 股东向公司借款需要什么手续
  • 电信宽带欠费滞纳金最多减免多少?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设