1、目标路径
首先,将文件的目标路径赋值给一个目录,采用path变量
其次,(1)basename(变量)返回路径中文件名部分
(2)用dirname(变量)返回路径中目录部分
(3)用pathinfo(变量)获取文件的信息
<?php
$path='C:\APP\www\PHP\demo.php'; //绝对路径;
//获取文件名信息;
//print_r(pathinfo($path));
$array_path=pathinfo($path);
echo $array_path['dirname']; //目录;
echo $array_path['basename'];//文件名;
?>
若要确定绝对路径,则先要了解绝对路径和相对路径的概念
(1)绝对路径——C:\APP\www\PHP\demo.php
(2)相对路径——demo.php
<?php
$path='123/123.php'; //相对路径;
echo realpath($path);
?>
结果:'C:\APP\www\PHP\123\123.php'
2、磁盘、目标和空间运算
(1)取得文件字节大小——filesize(变量)
(2)保留小数——round()
(3)确定磁盘可用空间——disk_free_space(路径)
(4)确定文件最后访问时间——fileatime()
<?php
$path='E:\UPUPW_KANGLE_K2.1_64\UPUPW_K2.1_64\htdocs\demo.php';
//将时间翻译为正常的时间;
//echo fileatime($path);
//格式化一下本地时间;
//调整一下时区;
date_default_timezone_set('Asia/Zhengzhou');
//获取最后的访问时间;
echo '最后访问时间:'. date('Y-m-d H:i:s',fileatime($path)).'<br>';
//获取最后的改变时间,所有者,权限修改;
echo '最后改变时间:'.date('Y-m-d H:i:s',filectime($path)).'<br>';
//获取最后的修改时间,文件内容的修改;
echo '最后修改时间:'.date('Y-m-d H:i:s',filectime($path)).'<br>';
?>
3、文件处理
(1)资源——文件输入流、输出流
(案例:标准输入或输出、文件和网络套接字)
(2)将数据写入一个文件,步骤如下:
a、打开文件,若不存在,需要先创建;
b、将数据写入这个文件;
c、关闭这个文件
(3)从文件中读出数据,步骤如下:
a、打开文件,若不可正常打开,则应该意识到且正确的退出;
b、从文件中读出数据;
c、关闭这个文件。
PHP中打开文件:采用fopen()函数,并且需要指定文件模式
模式:(1)a 只写 (5)r 只读
(2)a+ 读写 (6)r+ 读写
(3)b 二进制 (7)w 只写(写入前,删除文件;若无,则先创建)
(4)t 文本 (8)w+ 读写
向文件写入数据,用到fwrite()方法;
<?php
//现在要读出文件;
$fp=fopen('file.txt','r');
//echo fgetc($fp) //读出一个字符,并将指针指向第一个指针;
//fgetss可以过滤html
//echo fgetss($fp);
?>
fgets()从handle指向的文件中读取一行并返回长度length-1字节
fread()表示从文件指针
file()返回一个数组array(),将文件分组存放在数组中
readfile()将整个文件读出来,本身能够直接输入浏览器,所以不需要echo,
返回值是文件字节的总长度
get_Contents()可以读入缓冲区
<?php
$fp=fopen('file.txt','r');
//feof——测试文件是否到了文件结尾位置
while(!feof($fp)){
echo fgetc($fp);
}
fclose($fp);
?>
查看文件是否存在file_exits()
<?php
//比如读取文件时,必须保证文件一定存在,才可以操作;
//否则就报错,不可以执行,即必须要做一个检测;
//file_exits——检测文件是否存在;
if(file_exits('file.txt')){
echo '执行各种文本读写操作';
}
else{
echo '此文本不存在,请重新生成';
}
?>
查看文本大小filesize()
删除文件unlink()
倒回文件指针的位置rewind()
返回文件指针的位置ftell()
在文件指针中定位fseek()
<?php
$fp=fopen('file.txt','r');
echo ftell($fp);
fseek($fp,21);
echo ftell($fp);
echo fgetc($fp);
?>
文件锁定flock()
<?php
//a表示可以追加,b表示二进制,这样可移植性;
$fp=fopen('file.txt','ab');
flock($fp,LOCK_EX);
fwrite($fp,$outsum);
flock($fp,LOCK_UN); //释放;
fclose($fp);
?>
文件目录句柄closedir
<?php
//打开一个目录;
@$dir=opendir("C:\APP\www\demo.php");
//读出目录——一条;
//echo readdir($dir);
//读出目录,使用一个循环来读出;
//字符串如果是一个布尔值,不为空,就为真;
while(!!file=readdir($dir)){
echo $file.'<br>';
}
//关闭;
//closedir($dir);
//重命名文件;
rename('file.txt','file1.txt');
?>