零基础建站培训介绍

当前位置:

PHP实现将数据保存为TXT文件(PHP实现大文件拆分)

PHP有点强大的功能,它可以处理各类数据。今天学做网站论坛介绍一下PHP怎么将一组数据保存为TXT文件,这种在有些应用中非常实用。

PHP数据保存为TXT文件,可以直接使用以下的代码:


<?php

//数据数组
//代码来源:学做网站论坛:https://www.xuewangzhan.net/baike/php-21359.html

$urlarr = array('数据1','数据2','数据3');

//转化为JSON

$write_data_a = json_encode($write_data_a);

$date = date("Y-m-d", time());

//项目路径目录,判断是否存在,不存在则创建

$lujing = "./360_mobile_res_sd";

if(!is_dir($lujing)){
mkdir(iconv("UTF-8", "GBK", $lujing),0777,true);

}

//文件,判断是否存在,不存在则创建

$TxtFileName = "./360_mobile_res_sd/url_1.txt";

//以读写方式打写指定文件,如果文件不存则创建

if(file_exists($TxtFileName))

{
//存在,追加写入内容

file_put_contents($TxtFileName, $write_data_a, FILE_APPEND);

}

else

{
//不存在,创建并写入

if( ($TxtRes=fopen ($TxtFileName,"w+")) === FALSE){
exit();

}

if(!fwrite ($TxtRes,$write_data_a)){ //将信息写入文件

fclose($TxtRes);

exit();

}

fclose ($TxtRes); //关闭指针

}
?>

代码详解:

先将一组数据保存到一个数组里,然后将数组转换成JSON数据,再将这些数据保存到/360_mobile_res_sd/url_1.txt里,这个文件会自动生成的,如果里面已经有数据了,就将新数据添加进去。

高级应用

如果想将一个大的数据保存为多个小的TXT文件,就可以在以上代码里加一个循环判断。代码如下:

<?php

//数据数组

$urlarr = array('数据1','数据2','数据3','数据4','数据5');

$write_data_a=array();//空数组

for($i=0;$i<count($urlarr);$i++){
array_push($write_data_a,$urlarr[$i]);
if($i % 4==0){

//转化为JSON

$write_data_a = json_encode($write_data_a);

$date = date("Y-m-d", time());

//项目路径目录,判断是否存在,不存在则创建

$lujing = "./360_mobile_res_sd";

if(!is_dir($lujing)){
mkdir(iconv("UTF-8", "GBK", $lujing),0777,true);

}

//文件,判断是否存在,不存在则创建

$TxtFileName = "./360_mobile_res_sd/url_".$i.".txt";

//以读写方式打写指定文件,如果文件不存则创建

if(file_exists($TxtFileName))

{
//存在,追加写入内容

file_put_contents($TxtFileName, $write_data_a, FILE_APPEND);

}

else

{
//不存在,创建并写入

if( ($TxtRes=fopen ($TxtFileName,"w+")) === FALSE){
exit();

}

if(!fwrite ($TxtRes,$write_data_a)){ //将信息写入文件

fclose($TxtRes);

exit();

}

fclose ($TxtRes); //关闭指针

}
$write_data_a=array();
}
}
?>

这样就可以实现将数组里每4行数据保存为一个txt文件,实现了大文件切分成小文件的效果。

上一课: 下一课: