《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 中的一些经验积累
Oct 09 PHP
NOT NULL 和NULL
Jan 15 PHP
如何修改和添加Apache的默认站点目录
Jul 05 PHP
php header功能的使用
Oct 28 PHP
个人写的PHP验证码生成类分享
Aug 21 PHP
PHP处理大量表单字段的便捷方法
Feb 07 PHP
php+ajax实现无刷新动态加载数据技术
Apr 28 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
Yii2第三方类库插件Imagine的安装和使用
Jul 06 PHP
PHP函数积累总结
Mar 19 PHP
PHP7中I/O模型内核剖析详解
Apr 14 PHP
php post换行的方法
Feb 03 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
中国收音机工业发展史
2021/03/02 无线电
PHP加密解密实例分析
2015/12/25 PHP
20个非常棒的Jquery实用工具 国外文章
2010/01/01 Javascript
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
node.js中的fs.utimesSync方法使用说明
2014/12/15 Javascript
jquery实现点击页面计算点击次数
2015/01/23 Javascript
原生js三级联动的简单实现代码
2016/06/07 Javascript
Js遍历键值对形式对象或Map形式的方法
2016/08/08 Javascript
jQuery焦点图轮播效果实现方法
2016/12/19 Javascript
jquery插件treegrid树状表格的使用方法详解(.Net平台)
2017/01/03 Javascript
js实现弹窗暗层效果
2017/01/16 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
AngularJs定时器$interval 和 $timeout详解
2017/05/25 Javascript
vue实现的上传图片到数据库并显示到页面功能示例
2018/03/17 Javascript
JS实现的input选择图片本地预览功能示例
2018/08/29 Javascript
通过jQuery学习js类型判断的技巧
2019/05/27 jQuery
js实现搜索提示框效果
2020/09/05 Javascript
[01:12:40]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第三场 1月25日
2021/03/11 DOTA
Django框架中数据的连锁查询和限制返回数据的方法
2015/07/17 Python
Python中的函数作用域
2018/05/07 Python
通过Pandas读取大文件的实例
2018/06/07 Python
浅谈Pycharm调用同级目录下的py脚本bug
2018/12/03 Python
用python3 urllib破解有道翻译反爬虫机制详解
2019/08/14 Python
Python3 sys.argv[ ]用法详解
2019/10/24 Python
在Python中使用turtle绘制多个同心圆示例
2019/11/23 Python
基于Python3.7.1无法导入Numpy的解决方式
2020/03/09 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
2020/06/10 Python
CSS3中文字镂空、透明值、阴影效果设置示例小结
2016/03/07 HTML / CSS
详解HTML5 canvas绘图基本使用方法
2018/01/29 HTML / CSS
威尔逊皮革:Wilsons Leather
2018/12/07 全球购物
屈臣氏乌克兰:Watsons UA
2019/10/29 全球购物
平面设计师的工作职责
2013/11/21 职场文书
群众路线教育实践活动整改方案(个人版)
2014/10/25 职场文书
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
eval(cmd)与eval($cmd)的区别与联系
2021/07/07 PHP
解析mybatis-plus中的resultMap简单使用
2021/11/23 Java/Android