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

实例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函数,大家可以自己试试。

时间: 2024-11-01 00:36:37

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

《PHP编程最快明白》第八讲:php启发和小结

同时,有很多函数是可以有多种方法实现的,这需要灵活运用.只有记住了这些函数,才能开发出动态的网站:也只有多练习,整个网站开发一次,才能熟练的进行下次的开发,才发现自己的不足并改进. 很多方法都可以改进,比如这个计数器: 实例24 计数器 复制代码 代码如下: <?php //计数器 function countx($file="count.dat"){ if(file_exists($file)){ $fp=fopen($file,"r"); $numx=fg

《PHP编程最快明白》第八讲:php启发和小结_php基础

同时,有很多函数是可以有多种方法实现的,这需要灵活运用.只有记住了这些函数,才能开发出动态的网站:也只有多练习,整个网站开发一次,才能熟练的进行下次的开发,才发现自己的不足并改进. 很多方法都可以改进,比如这个计数器: 实例24 计数器 复制代码 代码如下: <?php //计数器 function countx($file="count.dat"){ if(file_exists($file)){ $fp=fopen($file,"r"); $numx=fg

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

实例15 目录创建.删除 复制代码 代码如下: <?php $dirfile="文件夹"; $dirfile=iconv("UTF-8","GB2312",$dirfile);//转码,否则会看到windows里面是乱码,但程序能正常操作,读取目录时反过来才看到目录的真正名字. if(!file_exists($dirfile))//用于判断目录或文件是否存在 mkdir($dirfile);//创建目录 rmdir($dirfile);/

《PHP编程最快明白》第四讲:日期、表单接收、session、cookie

实例11:日期戳.日期显示 复制代码 代码如下: <?php echo time();//返回一串以秒计算的时间数字戳 echo "<br>"; echo date("Y-m-d H:i:s",time()+8*3600);//格式化时间,+8*3600变为中国时区时间 echo "<br>"; $str="2010-08-24 10:26:10"; echo date("Y-m-d H

《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组

数字.浮点.布尔型是值类型,英文:int.float.bool,这样你知道他们怎么用了. 比如语句:$fa=3.14; 字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string.array. 比如:$str="字符串";$arr=array("a"=>"数","b"=>"组");// array()是一个数组赋值函数,这

《PHP编程最快明白》第三讲:php数组

实例7:数组值基本操作 复制代码 代码如下: <?php $arr=array('a'=>"你",'b'=>"我","他"); $arr[]="其他"; echo $arr['b']."<br>"; $arr['c']="";//给个空值,但仍然占着位置的 echo count($arr)."<br>";//数组有多少个值.

《PHP编程最快明白》第六讲:Mysql数据库操作

答案就是做成一个类--数据库类就产生了.通过对函数的二次封装,实现了非常好的重用.要用的时候再include进去. 在讲PHP数据库之前,先介绍一下Mysql要点:大家可以用phpmyadmin学习数据库操作. 在phpmyadmin里看到编码这一项全部选中文utf-8就对了. Mysql数据库类型主要是: char(固定空间字符串,多大就是多少个中文字符).varchar(可变空间字符串,多大就是初始化多少个中文字符).int(整数多大就是多少位).float(浮点数).timestamp(日

《PHP编程最快明白》第七讲:php图片验证码与缩略图

实例22 图片验证的核心代码 复制代码 代码如下: <?php //header("content-type:image/png"); $num ='1234'; $imagewidth=60; $imageheight=18; $numimage = imagecreate($imagewidth,$imageheight); imagecolorallocate($numimage,240,240,240); for($i=0;$i<strlen($num);$i++)

PHP编程最快明白(第一讲 软件环境和准备工作)

下载安装好就可以用,这样的集成开发环境很多,如果你已经按照其他书安装了PHP+Mysql开发环境,调试过就不用改了.我是租的空间,本地调试就没关系啦,效果一样的. 我用的代码编写软件是dreamweaver.说实话,我只使用其代码高亮和CSS功能,全部代码都是手工编写的.你用记事本或者Zend Studio等都可以(但一旦遇到问题别怪我,因为你也可以在LUNIX里面看我的教程和编写程序,甚至坐在太空船上学习,前提是不要违背我写这本书的目的.) ftp上传工具可以用:FlashFXP等随便一个啦.