php文件操作总结

原创 2018-12-18 17:28:56 261
摘要:本章主要学习了php文件操作的函数,包括文件和文件夹的创建,修改,删除,读取操作。通过学习,对本章知识进行练习,代码如下:<?php header('content-type:text/html;charset=utf-8'); date_default_timezone_set('Asia/Shanghai'); $fileName='test.

本章主要学习了php文件操作的函数,包括文件和文件夹的创建,修改,删除,读取操作。通过学习,对本章知识进行练习,代码如下:

<?php

header('content-type:text/html;charset=utf-8');
date_default_timezone_set('Asia/Shanghai');

$fileName='test.txt';
echo $fileName , '的文件类型是:' , filetype($fileName), ',文件大小是:' , filesize($fileName) , ',创建时间为:' , date('Y-m-d H:i:s' , filectime($fileName)) , ',最后修改时间为:' , date('Y-m-d H:i:s',filemtime($fileName)) , ',最后访问时间为:' , date('Y-m-d H:i:s',fileatime($fileName)) , ',文件为' , is_readable($fileName)?'可读':'不可读' , ',文件为' , is_writable($fileName)?'可写':'不可写' , ',文件' , is_executable($fileName)?'可执行':'不可执行';

echo '<br>';

echo $fileName , '文件的基本信息为:' , var_export(pathinfo($fileName),true);

echo '<br>';

$oldFileName='text2.txt';
$newFileName='text3.txt';

echo '创建文件:' , $oldFileName , touch($oldFileName)?'成功':'失败' ;

echo '<br>';

echo $oldFileName , '重命名为:' , $newFileName , rename($oldFileName,$newFileName)?'成功':'失败' ;

echo '<br>';

echo '删除文件:' ,$newFileName , unlink($newFileName)?'成功':'失败' ;

echo '<br>';

echo '把' ,$fileName , '拷贝成新的文件text4.txt' , copy($fileName,'text4.txt')?'成功':'失败' ;

echo '<br>';

//打开文件
$openFile='text4.txt';
$writeContent='我是替换内容';
//读取文件内容
$file=fopen($openFile,'rb+');
//输出文件内容
echo_FileContent($file,$openFile);
//获取当前指针位置
echo '<br>';
echo '当前指针位置为:' , ftell($file);
//往文件写入内容
echo '<br>';
echo '往文件' , $openFile , '写入内容:' ,$writeContent , fwrite($file,$writeContent)?'  成功':'  失败' ;
echo '<br>';
//指针重新回到起始位置
rewind($file);

//循环输出内容
echo '循环输出' , $openFile , '的内容:';
while(!feof($file))
{
    echo fgetss($file);
}
echo '<br>';

echo '通过file_get_contents获取',$openFile,'文件内容:' , file_get_contents($openFile);

echo '<br>';

$csvFile='text.csv';
if(!file_exists($csvFile))
{
    touch($csvFile);
}
$file=fopen($csvFile,'rb+');
$arr=[
    ['1Pong','男'],
    ['鹏哥','男']
];
//往csv文件写入数据
foreach ($arr as $val)
{
    fputcsv($file, $val, ',');
}
//指针重新回到开始
rewind($file);
//var_dump(fgetcsv($file));
echo $csvFile , '的内容通过,分割组成的数组为:';
while ($row=fgetcsv($file,60,',')){
    print_r($row);
}

echo '<br>';

$dirName='cDir';
//创建目录
if(!file_exists($dirName))  //不存在则创建目录
{
    echo '创建目录' , $dirName , mkdir($dirName, 0777, true) ? '  成功' : '  失败';
}



$dir=opendir($dirName);

$dirSencondName='upload';
if(!file_exists($dirName.'/'.$dirSencondName ))  //不存在则创建目录
{
    echo '创建目录' , $dirSencondName , mkdir($dirName.'/'.$dirSencondName, 0777, true) ? '  成功' : '  失败';
}


while ($row=readdir($dir))
{
    if($row!='.'&&$row!='..')
    {
        echo $dirName , '下的文件夹有:' , $row;
    }
}

echo '<br>';

echo '删除' , ($dirName . '/' . $dirSencondName) , '文件夹',  rmdir($dirName . '/' . $dirSencondName)? '  成功' : '  失败';
//关闭文件夹
closedir($dir);


/**
 * @param $file 打开的文件
 * @param $openFile 打开的文件名
 */
function echo_FileContent($file,$openFile)
{
    echo $openFile , '的内容为:' , fread($file,filesize($openFile));
}

效果图

QQ截图20181218172545.jpg

批改老师:天蓬老师批改时间:2018-12-18 18:04:33
老师总结:文件操作, 在最新的php版本中,提供了很多优秀的API类, 有空可以看一下, 配合经典的操作, 效率更高

发布手记

热门词条