PHP之文件系统处理_文件操作…

文件操作相关的函数

函数                   作用

touch()                创建一个文件         使用方法touch("文件名")

unlink()               删除一个文件        使用方法unlink("文件路径")

rename()               移动文件或重命名文件 使用方法rename("当前 文件路径","目标文件路径")

copy()                 拷贝文件             使用方法copy("当前","目标")

 

文件的打开与关闭(读内容和写内容)

函数                                作用

file_get_contents()                 读取文件内容

file_put_contents()                 写入文件内容

file()                              将文件读入一个数组中

readfile()                          读取文件内容并输出

 

 

例一:

<?php
//读取函数 file_get_contents()  和写入函数file_put_contents() 的使用
$str=file_get_contents("http://www.baidu.com"); //将百度读取到$str
$str_img='/<imgs+src=.*?s*/?>/i';  //定义正则规则
preg_match_all($str_img,$str,$imgs);  //使用匹配函数进行<img src= />标签的匹配

echo '<pre>';
print_r($imgs);
echo $imgs[0][0];
echo '</pre>';
echo '<hr>';
$newimg='';
foreach ($imgs[0] as $img){  //遍历匹配出来的$imgs图片数组
 $newimg.=$img.'<br />';
}

echo $newimg;
file_put_contents('test.txt',$newimg);  //将获取的$newimg写入文件test.txt中
?>

 

 例二:

<?php

//读取指定文件(config.inc.php)的内容,对部分进行修改并写入原文件中

if(isset($_POST["sub"])){ //判断有内容提交
 setConfig($_POST);
}
function setConfig ($post){
 $str=file_get_contents("config.inc.php"); //读取config.inc.php内容
 $zz=array();
 $rep=array();
 foreach($post as $key=>$value){
  $zz[]='/define("'.$key.'",s*.*?);/i';   //利用遍历数组生成正则表达式
  $rep[]='define("'.$key.'", "'.$value.'");';  //利用遍历数组生成替换内容表达式

 }
 echo '<pre>';  //输出原型,检查正则表达式和替换内容是否正确
 print_r($zz);
 print_r($rep);
 print_r($post);
 echo '</pre>';
 $str=preg_replace($zz,$rep,$str);  //利用替换函数对$str进行替换
 file_put_contents("config.inc1.php",$str); //将替换好的内容写入文件
}


?>
<html>
<head>
 <title>file_get_contents()和file_put_contents()实例</title>
</head>
<body>

<!-- 本页面名称为file1.php-->
 <form action="file1.php" method="post"><br />
 Host:<input type="text" name="DB_HOST"  /><br />
 User:<input type="text" name="DB_USER"  /><br />
 Pass:<input type="text" name="DB_PWD"  /><br />
 DBname:<input type="text" name="DB_NAME" /><br />
 TAB_PREFIX:<input type="text" name="TAB_PREFIX" /><br />
 <input type="submit" name="sub" value="提交"><br />
 </form>
</body>
</html>

 

例三:

<?php

//利用file()函数将文件cms.sql读入数组中进行处理 ,trim()处理空格 ,explode()分割
$lines=file("cms.sql");  //将cms.sql读入$line数组中
$sqlstr="";
echo '<pre>';   //显示读入的结果
print_r($lines);
echo '</pre>';
echo '<hr />';
foreach($lines as $line){  //获取读入的每行数据
 $line=trim($line);   //去除每行两本的空格
 if($line!=""){  //获取不是空白的行
  if(!($line{0}=="#" || substr($line,0,2)=="--")){  //排除注释
   $sqlstr.=$line;    //将所有行连接起来
   
  }
 }
}
$sqlstr=rtrim($sqlstr);    //去除最后的分号;
$sql_contents=explode(";",$sqlstr);  //用分割函数以;为标志进行分割
echo '<pre>';  //输出分割后的数据
print_r($sql_contents);
echo '</pre>';
?>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值