<?php
header("content-type:text/html;charset=utf-8");
//文件路劲有关的四个函数
//1 文件大小
//1 文件最后的访问时间
//文件操作
//1 文件读取
echo "<br>".$path;
header("content-type:text/html;charset=utf-8");
//文件路劲有关的四个函数
//文件目录的绝对路径
$path = "./30.php";
echo __DIR__;//E:\WAMP\apache2\htdocs\php
//1文件名
echo basename($path)."<br>";//30.php 加可选参数.php 时输出 名字 没后缀
echo basename($path,".php");//30
//2路径目录
echo dirname($path); // .
//3有关路径的综合
$info = pathinfo($path);
var_dump($info);
//4 返回绝对路径
echo realpath($path);//E:\WAMP\apache2\htdocs\php\30.php
//计算文件目录 磁盘等属性
//1 文件大小
echo filesize($path);//187 单位字节
//2 磁盘可用空间
echo disk_free_space("E:"); //61652082688 字节
//3 磁盘总空间
echo disk_total_space("E:");
//4 获取目录大小
function getDirSize($dirname){
$totalfilesize = 0;
$dirh = opendir($dirname);//抑制文件错误输出 即使打开失败也不会返回错误
if ($dirh) {
while ( ($dirElement = readdir($dirh)) ) {
$brandir = $dirname."/".$dirElement;
if(is_file($brandir)){
$totalfilesize += filesize($brandir);
}
if( is_dir($brandir )){
// $totalfilesize += getDirSize($brandir);
}
}
}
@closedir($dirh);
return $totalfilesize;
}
// echo "--------"."<br>".getDirSize("E:\C++\ConsoleApplication16\ipch");
//文件修改时间 以及访问时间 //返回的为时间戳
//1 文件最后的访问时间
echo fileatime($path);
//2 文件的 最后改变时间 包括权限等
echo filectime($path);
//3 文件 文本的修改时间
echo filemtime($path);
$path= "./05_p.txt";
//文件操作
//1 文件读取
echo "<br>".$path;
function getFileContent (){
global $path;//取外部的$path
$handle = @fopen($path,'r');//无法打开php文件 只能打开特定文件 r r+ w(写前会删除内容) w+(写前删除) a(追加模式 只能写 a+(读写 追加)
while( !feof($handle) ){//feof 为 EOF代表文文件末尾
// echo fgets($handle); //每次取一行
//echo fgetc($handle);//每次去1 个字符
echo fread($handle,'1024');//每次取1024个字节
}
fclose($handle);
}
getFileContent();
//2远程的打开
$handle = fopen("http://www.phtstudy.xin", "r");
echo fgets($handle,"1024");
//3以数组的方式放回数据
$arr = file($path);//每次输出一行
var_dump($arr);
//4fgetcsv 得到csv数据 既可以输 excel access mysql 文件等
function getexcel(){
$handle = fopen("./01.csv", "r");
$arr = fgetcsv($handle);
$arr= array_slice($arr, 0, 2);
var_dump($arr);
call_user_func_array(function ( $arr1,$arr2 ) {
echo iconv("GBK","UTF-8",$arr1).$arr2; // 设计乱码问题
},$arr);
}
getexcel();
//5解析 文本fscanf
function scanfFile()
{
$handle = fopen("./file1.txt", "r");
while(($scan = fscanf($handle, "%d-%d-%d") )){
var_dump($scan);
}
fclose($handle);
}
scanfFile();
//6 取出所有文件
$allfile = readfile($path);//取出所有内容
//文件目录的操作
$dir = opendir('e:');
while( ($file = readdir($dir)) ){
echo iconv("GBK","UTF-8",$file)."<br>";
}
closedir($dir);
//删除文件 unlink() 删除目录rmdir() 重命名文件rename()
//passthru($command) 用于系统而进制返回数据 例如图片等
//php 常用的两个调用操作系统的两个函数
$exec = exec("dir",$result); //第一个参数也可以传递脚本文件
var_dump($exec); //返回文件大小要想返回文件结果 要加个参数
var_dump($result);//执行结果
$res = system(" dir",$result); //直接返回结果
//$res = mb_convert_encoding($res, "UTF8");
$res =iconv("gbk","utf-8", $res );
echo $res;