位置: 编程技术 - 正文

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时间计算)

  • 土地增值税计入固定资产清理
  • 发票认证抵扣后还有用吗
  • 辞退员工补偿的月平均工资如何计算
  • 企业的成本核算包括
  • 开票资料都包括什么内容
  • 中期票据怎么入账
  • 租金收入摊销
  • 2016年营改增后18个税种,第一大税种是()
  • 出现销项负数
  • 计提房租的会计科目
  • 税控盘这个月没有反写会怎么样
  • 企业自建房转让如何交土地增值税
  • 个人终止投资经营怎么办
  • 国税局可以开增值税专用发票吗
  • 增值税税负低如何解释
  • 增值税电子普通发票怎么下载
  • 业主委员会的收益
  • 一年期电子银行承兑汇票
  • 公司破产实收资本尚未交完股东对公司承担什么责任
  • 股东赠与计入资本公积,交税
  • 固定资产清理会计处理例题
  • 融资性售后回租承租方为什么不交税
  • 普通股优先股后配股区别
  • 暂估冲回账务处理
  • 新版关闭edge地址栏建议
  • 收到非税收入一般缴款书开发票吗
  • 应交企业所得税和所得税费用区别
  • 购买原材料折扣做什么会计科目
  • PHP:oci_set_edition()的用法_Oracle函数
  • php数组统计函数
  • 公司收到款后怎么做账
  • 企业支付银行的贷款利息可以税前扣除吗为什么
  • 猫鼬家族风云
  • phpforeach遍历二维数组
  • 个人开收据应该注意什么
  • 以前年度收入如何确认收入
  • 销售点的增值税计算公式
  • 资产负债表中各项目的期末数应根据各账户
  • 核定征收的企业注销需要缴纳个人所得税吗
  • 股东出资未注明投资款可以通过验资报告处理么
  • php 动态调用类方法
  • ecshop有哪些bug
  • php读取二进制文件
  • 如何使用vue
  • ChatGPT解开了我一直以来对自动化测试的疑惑
  • 用jsp实现用户登录验证
  • 从零开始作者
  • 一般纳税人销售给小规模纳税人
  • 申请开具电子发票
  • 银行存款出现负数
  • 材料采购成本是什么科目
  • 织梦网站特有标识
  • js怎么执行函数
  • 差旅费抵扣进项税额
  • 中标的费用怎么算
  • 融资租赁确认的具体条件
  • 建筑业外管证预审要多久
  • 二手房交易需缴纳哪些费用
  • 其他应付什么意思
  • 注册资本认缴与注册登记实操
  • 农产品加计扣除10%进项税账务处理
  • 特殊销售方式下销售额的确定
  • 所得税减免的企业税率
  • 结算账户分为哪几种?其用途结构如何?
  • 购车的费用包括哪些费用
  • 农业生态有限公司成立条件
  • 资本公积其他资本公积用途
  • sql整型
  • mysql四个事务的四个特性
  • windows性能监视器横坐标
  • 忘记ubuntu root密码
  • win7系统打印服务怎么开启
  • win7系统怎么卸载显卡驱动
  • 红石数据
  • linux就要这样学
  • three. js
  • js页面滚动到指定位置
  • flask框架下使用scrapy框架
  • 广东省电子学校
  • acfunp
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设