《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去除数组中重复的元素并按键名排序函数
Aug 18 PHP
PHP 编写大型网站问题集
May 07 PHP
linux iconv方法的使用
Oct 01 PHP
php去除字符串换行符示例分享
Feb 13 PHP
PHP的变量类型和作用域详解
Mar 12 PHP
Linux中用PHP判断程序运行状态的2个方法
May 04 PHP
phpExcel中文帮助手册之常用功能指南
Aug 18 PHP
Yii实现多数据库主从读写分离的方法
Dec 29 PHP
php中curl使用指南
Feb 05 PHP
win平台安装配置Nginx+php+mysql 环境
Jan 12 PHP
Thinkphp5.0自动生成模块及目录的方法详解
Apr 17 PHP
PHP两个n位的二进制整数相加问题的解决
Aug 26 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
PHP 验证码的实现代码
2011/07/17 PHP
Yii2-GridView 中让关联字段带搜索和排序功能示例
2017/01/21 PHP
javascript判断用户浏览器插件安装情况的代码
2011/01/01 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
2011/09/29 Javascript
javascript实现TreeView 无刷新展开的实例代码
2013/07/13 Javascript
JavaScript避免代码的重复执行经验技巧分享
2014/04/17 Javascript
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
JavaScript的原型继承详解
2015/02/15 Javascript
JS在onclientclick里如何控制onclick的执行
2016/05/30 Javascript
AngularJS HTML DOM详解及示例代码
2016/08/17 Javascript
npm 更改默认全局路径以及国内镜像的方法
2018/05/16 Javascript
微信小程序自定义组件之可清除的input组件
2018/07/17 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
2018/08/08 jQuery
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧不动,右侧滑动)
2019/01/23 Javascript
JS浅拷贝和深拷贝原理与实现方法分析
2019/02/28 Javascript
浅谈Vue CLI 3结合Lerna进行UI框架设计
2019/04/14 Javascript
layui表单提交到后台自动封装到实体类的方法
2019/09/12 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
解决vant的Toast组件时提示not defined的问题
2020/11/11 Javascript
[04:27]2014DOTA2国际邀请赛 NAVI战队官方纪录片
2014/07/21 DOTA
[00:34]DOTA2上海特级锦标赛 Spirit战队宣传片
2016/03/04 DOTA
Python手机号码归属地查询代码
2016/05/04 Python
python爬虫简单的添加代理进行访问的实现代码
2019/04/04 Python
用Python 执行cmd命令
2020/12/18 Python
Python中全局变量和局部变量的理解与区别
2021/02/07 Python
HTML5新增的标签和属性归纳总结
2018/05/02 HTML / CSS
Cult Gaia官网:美国生活方式品牌
2019/08/16 全球购物
中英文自我评价常用句型
2013/12/19 职场文书
语文教学感言
2014/02/06 职场文书
关爱女孩行动实施方案
2014/03/13 职场文书
市场部经理岗位职责
2014/04/10 职场文书
七一党日活动总结
2014/07/08 职场文书
2016七夕情人节感言
2015/12/09 职场文书
MySQL kill不掉线程的原因
2021/05/07 MySQL
浅谈Python协程asyncio
2021/06/20 Python
python三子棋游戏
2022/05/04 Python