《PHP编程最快明白》第五讲:php目录、文件操作


Posted in PHP onNovember 01, 2010

实例15 目录创建、删除

<?php 
$dirfile="文件夹"; 
$dirfile=iconv("UTF-8","GB2312",$dirfile);//转码,否则会看到windows里面是乱码,但程序能正常操作,读取目录时反过来才看到目录的真正名字。 
if(!file_exists($dirfile))//用于判断目录或文件是否存在 
mkdir($dirfile);//创建目录 
rmdir($dirfile);//删除目录,必须为空目录,否则要先删除里面的所有文件,后面有删除方法 
echo "<br>"; 
?>

实例16 文件创建、删除、读取、转数组
<?php 
$filename="文件.txt"; 
$filename=iconv("UTF-8","GB2312",$filename);//转码,否则会看到windows里面是乱码 
file_put_contents($filename,'');//自动创建空文件,如果已存在则删除再创建,具体可以增加file_exists判断,比fopen、fputs、fclose等函数简单。 
unlink($filename);//注意文件名都是GB2312编码 
file_put_contents($filename,"大家好!\r\n大家好啊!",FILE_APPEND); 
//看到没,写入两行, 第三个参数可选,表示是以增加方式写入,否则清空内容再写入 
echo file_get_contents($filename);//忽略换行读取整个文件 
echo "<br>"; 
$arr=file($filename);//文件按行读到数组里 
print_r($arr); 
echo "<br>"; 
readfile($filename);//文件直接输出到屏幕 
echo "<br>"; 
?>

实例17 获取url信息、客户端ip地址
<?php 
//获取域名或主机地址 
echo $_SERVER['HTTP_HOST']."<br>"; 
//获取网页地址(中间部分) 
echo $_SERVER['PHP_SELF']."<br>"; 
//获取网址参数(?后面部分) 
echo $_SERVER["QUERY_STRING"]."<br>"; 
//来源客户端ip地址 
if($_SERVER['HTTP_CLIENT_IP']){ 
$onlineip=$_SERVER['HTTP_CLIENT_IP']; 
}elseif($_SERVER['HTTP_X_FORWARDED_FOR']){ 
$onlineip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
}else{ 
$onlineip=$_SERVER['REMOTE_ADDR']; 
} 
echo $onlineip; 
echo "<br>"; 
?>

实例18 获取文件修改时间戳、遍历目录文件
<?php 
$filename="文件.txt"; 
$filename=iconv("UTF-8","GB2312",$filename); 
$passtime=time()-filectime($filename);//创建时间差,不准,一般不用 
echo $passtime; 
echo "<br>"; 
$passtime=time()-filemtime($filename);//修改时间差,用于更新判断,缓冲等判断 
echo $passtime; 
echo "<br>"; 
$dir="../"; 
print_r($arr=scandir($dir));//获得主目录的所有文件和文件夹名称 
foreach($arr as $value){ 
if (!is_dir($dir.$value)) //是否目录,目录还包括"."、".."两个数组,通过判断可以知道是文件还是目录,以及是什么类型的后序名 
echo iconv("GB2312","UTF-8",$value)."<br>\r\n"; 
} 
?>

实例19 文件包含
<?php 
$filename="文件.txt"; 
@include($filename);//包含到此处,然后由服务器处理成html代码。 
/* 
@表示读取不了时忽略错误警告,用于PHP语句、函数前,一般服务器端显示错误是关闭的,但是个别例外。除此之外,大家还可以try-catch捕捉异常,或者用file_exists函数先判断文件是否存在。 
*/ 
require_once($filename);//预处理包含,一般用于配置、函数等包含进来。这两个函数都可以选择_once,强调包含一次。 
//这四个函数都会被服务器处理PHP代码,简化重复的代码,很常用。实例15的readfile则直接当html输出到客户页面 
?>

可以看出,PHP操作文件目录的函数是比较简单和强大的,一个功能也就一行代码搞定。本章没有介绍copy函数,大家可以自己试试。
PHP 相关文章推荐
php auth_http类库进行身份效验
Mar 19 PHP
PHP垃圾回收机制简单说明
Jul 22 PHP
PHP操作数组的一些函数整理介绍
Jul 17 PHP
php实现天干地支计算器示例
Mar 14 PHP
Thinkphp多文件上传实现方法
Oct 31 PHP
PHP实现的简单日历类
Nov 29 PHP
php格式化电话号码的方法
Apr 24 PHP
php判断用户是否关注微信公众号
Jul 22 PHP
php操纵mysqli数据库的实现方法
Sep 18 PHP
PHP中quotemeta()函数的用法讲解
Apr 04 PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
May 28 PHP
PHP批斗大会之缺失的异常详解
Jul 09 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
Nov 01 #PHP
《PHP编程最快明白》第三讲:php数组
Nov 01 #PHP
《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
Nov 01 #PHP
一篇有意思的技术文章php介绍篇
Oct 26 #PHP
理解php原理的opcodes(操作码)
Oct 26 #PHP
PHP下常用正则表达式整理
Oct 26 #PHP
PHP编程最快明白(第一讲 软件环境和准备工作)
Oct 25 #PHP
You might like
smarty实例教程
2006/11/19 PHP
几个php应用技巧
2008/03/27 PHP
php各种编码集详解和以及在什么情况下进行使用
2011/09/11 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
ThinkPHP查询返回简单字段数组的方法
2014/08/25 PHP
PHP各种异常和错误的拦截方法及发生致命错误时进行报警
2016/01/19 PHP
分析PHP中单双引号的误区和双引号小隐患
2016/07/19 PHP
YII2框架中日志的配置与使用方法实例分析
2020/03/18 PHP
更正确的asp冒泡排序
2007/05/24 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
jQuery判断checkbox(复选框)是否被选中以及全选、反选实现代码
2014/02/21 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
jQuery实现冻结表头的方法
2015/03/09 Javascript
JavaScript中join()方法的使用简介
2015/06/09 Javascript
JavaScript从0开始构思表情插件
2016/07/26 Javascript
request请求获取参数的实现方法(post和get两种方式)
2016/09/27 Javascript
vue多级多选菜单组件开发
2020/09/08 Javascript
原生JS封装animate运动框架的实例
2017/10/12 Javascript
mint-ui 时间插件使用及获取选择值的方法
2018/02/09 Javascript
vue-cli3 项目从搭建优化到docker部署的方法
2019/01/28 Javascript
JS图片预加载三种实现方法解析
2020/05/08 Javascript
Linux(Redhat)安装python3.6虚拟环境(推荐)
2018/05/05 Python
Python 获取div标签中的文字实例
2018/12/20 Python
Django Celery异步任务队列的实现
2019/07/24 Python
python绘制玫瑰的实现代码
2020/03/02 Python
Python3爬虫中关于中文分词的详解
2020/07/29 Python
matplotlib基础绘图命令之bar的使用方法
2020/08/13 Python
微软澳洲官方网站:Microsoft Australia
2017/01/10 全球购物
上班看电影检讨书
2014/02/12 职场文书
《从现在开始》教学反思
2014/04/15 职场文书
党的群众路线学习材料
2014/05/16 职场文书
七一党日活动总结
2014/07/08 职场文书
孝敬父母的活动方案
2014/08/28 职场文书
城管年度个人总结
2015/02/28 职场文书
学校教学管理制度
2015/08/06 职场文书
2019最新版试用期劳动合同模板!
2019/07/04 职场文书