7.目标和文件

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');

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值