PHP基础 文件系统 第十四天

文件处理

文件打开的一个函数

Fopen(路径,打开模式);

远程路径

本地文件系统的路径为准

/    常量

W

W+

R

R+

A

A+

X

X+

B

T

Fwrite资源   字符串  长度

Fclose资源

Fread

Fputs

Fgets

Fgetc

File

Readfile

Feof

File_put_contents()

File_get_contents();

Fteel

Rewind

Fseek三个参数  指定某位置,在当前位置上面加上多少个位置,从后面开始数

FlockLOCK_SH  LOCK_EX  LOCK_UN   LOCK_NB






函数:

File_exists  检测文件是否存在,如果文件不存在则返回假,存在则返回真

Copy复制文件,原路径   目标路径【复制到神马位置】,复制的时候可以

进行重命名。

Unlink删除

Ftruncate截取长度,截取文件到指定位置

Basename

Diirname

Pathinfo

Parse_url      URL解析成N个部份,协议,主机,端口,文件路径,发送的信息

Is_dir判断是否是目录

Is_file判断是否是文件

Chmod修改权限[了解]

Chgrp修改用户所在组[了解]


Mkdir(路径,权限,是否递归创建目录)

0777 代表linux里面的权限规则  任意用户组,可读,可写,可执行

当前用户,当前用户所在组,其他人



<?php  

//basename.php
echo __FILE__;
echo '<br>';
//echo basename(__FILE__);  

//echo dirname(__FILE__);
/*  

$t=pathinfo(__FILE__);  

var_dump($t);  

 */

$str='http://php.xlxz.org/2012/09/93/';  

$t=parse_url($str);  

var_dump($t);  

?>

cache.php

<?php
//有效期为10秒 

if(file_exists('cache.txt')){
    $create=filectime('cache.txt'); 

    if((time()-$create)<10){
        echo '现在在缓存期之内';
    }else{
        echo '过期了,删除掉';
        unlink('cache.txt');
    }
}else{ 

    echo '文件不存在,重新创建';
    fopen('cache.txt','w'); 

} 

?>

config.php

<?php
//DB  database 数据库 host主机
define('DB_HOST','127.0.0.1');
//数据库的用户名
define('DB_USER','root');
//数据库的密码
define('DB_PWD','xlxz.org');
//数据库的库名
define('DB_NAME','phplalala'); 

?>

copy.php



<?php
//只是COPY 函数
if(copy('lyb.txt','e:/php.xlxz')){
    echo '成功'; 

}else{ 

    echo '复制失败';
} 

if(copy('php.txt','e:/lyb.php')){
    echo '成功'; 

}else{ 

    echo '复制失败';
}
?>


count.php 来访记数器


<?php
$fp=fopen('count.txt','r');
flock($fp,LOCK_SH);
$count=fread($fp,1024);
flock($fp,LOCK_UN);
fclose($fp);
$count=$count+1;
echo '您是第'.$count.'个访客';
$fp=fopen('count.txt','w');
flock($fp,LOCK_EX);
fwrite($fp,$count);
flock($fp,LOCK_UN);
fclose($fp);
?>

db_write.php

<?php 

$file=file_get_contents('config.inc.php'); 

foreach($_POST as $key=>$val){ 

    $pattern="/define\('$key','(.*?)'\);/"; 

    $replace="define('$key','$val');"; 

    $file=preg_replace($pattern,$replace,$file);
}
file_put_contents('config.inc.php',$file); 

?>

fctime.php

<?php
echo fileatime('cache.txt');
$t=stat('cache.txt');
var_dump($t);
?>

ftruncate.php

<?php
$fp=fopen('nerver.txt','a+'); 

ftruncate($fp,4); 

fclose($fp); 

?>

glob.php

<?php 

$t=glob('{a,b,c}*.php',GLOB_BRACE); 

var_dump($t); 

?>

liuyanban.php

<?php
    $string=file_get_contents('lyb.txt'); 

    $string=rtrim($string,'cs');
    $arr=explode('cs',$string); 

    foreach($arr as $val){ 

        list($username,$content,$time)=explode('$%',$val); 

        echo '用户名为'.$username.'内容为<font color="red">'.$content.'</font>时间为'.$time.'<br>';
        echo '<hr />';
    } 

?>
<form action="write.php" method="post">
    <input type="text" name="username" />
    <textarea name="content"></textarea>
    <input type="submit" value="提交"> 

</form>

write.php

<?php
date_default_timezone_set('Asia/chongqing'); 

$username=$_POST['username'];
$content=$_POST['content'];
$time=date('Y-m-d H:i:s'); 

$string=$username.'$%'.$content.'$%'.$time.'cs'; 

/*
$f=fopen('lyb.txt','a+');
fwrite($f,$string);
fclose($f);
 */

if(file_exists('lyb.txt')){
    $fp=fopen('lyb.txt','a+'); 

    fwrite($fp,$string);
    fclose($fp); 

}else{
    $fp=fopen('lyb.txt','w');
    fwrite($fp,$string);
    fclose($fp);
} 

echo '恭喜你,留言成功,请<a href="liuyanban.php">返回</a>'; 

?>

mkdir.php

<?php
mkdir('ab/bc/cd/bb');
$path='ab/bc/cd/bb';
mkdir($path,0777,true);
?>

rename.php

<?php 

rename('xlxz','xlxz.php'); 

?>

rewinddir.php

<?php
$dir=opendir('D:\web\file2'); 

echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>'; 

rewinddir($dir);
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>';
echo readdir($dir).'<br>'; 

?>

rmdir.php

<?php 

rmdir('bc'); 

echo disk_total_space('e:')-disk_free_space('e:'); 

?>

t.php

<?php
$arr=array(
    '0'=>'id',
    '1'=>'username',
    '2'=>'password',
    '3'=>'createtime',
    '_pk'=>'id',
    '_auto'=>'id',
); 

$string="<?php \n return ".var_export($arr,true)."\n ?>"; 

file_put_contents('user.php',$string); 

?>

unlink.php

<?php
if(unlink('st.txt')){ 

    echo '删除成功';
} 

?>

user.php

<?php
 return array (
  0 => 'id',
  1 => 'username',
  2 => 'password',
  3 => 'createtime',
  '_pk' => 'id',
  '_auto' => 'id',
)
 ?>

tongji.php

<?php 

$open='D:/web/'; 

ck($open); 

function ck($open){ 

$res=opendir($open); 

while($file=readdir($res)){ 

    $newPath=$open.'/'.$file; 

    if($file!=='.'&&$file!='..'){
        if(is_file($newPath)){
            echo '<font color="red">'.$file.'</font><br>';
        }else{
            echo '文件夹'.$file.'大小为'.ckr($newPath).'<br>';
        }
    }
}
closedir($res); 

} 

function ckr($open){ 

$res=opendir($open); 

while($file=readdir($res)){ 

    $newPath=$open.'/'.$file; 

    if($file!=='.'&&$file!='..'){
        if(is_file($newPath)){
            $count+=filesize($newPath);
        }else{
            $count+=ckr($newPath);
        }
    }
}
closedir($res);
return $count; 

} 

?>