This is the code for php to generate txt files from a friend. This is just an example. I need to generate multiple txt files for him. It’s an example, but I think his code is a bit interesting, so I shared it.
Let’s first talk about the function of this php code to generate txt files. It must be to generate txt files. It’s a bit nonsense. Let’s not talk about other things. This php code can generate a txt file in the specified directory and Write three lines of text in the txt file. This is defined in php.
The code of the example shared by Summer Blog is as follows:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <?php /** *1.前几天一哥们工作中他们领导让他写一个上生成文件的类:生成文件,文件类型支持:txt、html、csv、pdf、doc(或者docx)。 * *2.生成的内容是一张表格(像html中的table),参数为:生成文件的类型、生成内容的标题(数组),生成内容(数组,和标题相对应)。 */ /************************************************* * class name:createFile * description:create different type files * author:fenghuo * date:2013-11-12 ************************************************/ /** *3.我利用晚上的时间帮他就整理了一个生成txt的文件类. ***/ class createFile{ public $file_type; public $file_name; public $file_dir; /** * 构造函数:初始化生成文件的目录 */ public function __construct($file_dir){ $this->file_dir = $file_dir; } /** * 生成文件的入口函数 * @string $file_name 文件名 * @string $file_type 文件类型 * @array $title 生成内容的标题行 * @array $data 生成内容 */ public function create_file($file_name,$file_type,$title,$data){ if(empty($data)){ return false; } if(!empty($title)){ if(count($title) != count($data[0])){ return false; } } if($file_name == ""){ $file_name = $this->file_name; } if($file_type == ""){ $file_type = $this->file_type; } $fun = 'mk_'.$file_type; # 测试点 echo $fun,'--------------<br/>'; if( method_exists( $this,$fun)) { $file = $file_name.".".$file_type; $this -> $fun ($file,$title,$data); return true; }else{ return "NO!"; } } /** *生成txt类型文件 *@string $file 文件名 *@array $title 标题 *@array $data 内容 */ public function mk_txt($file,$title,$data){ $string = ""; if(!empty($title)){ for( $i = 0;$i < count( $title ); $i++ ){ $string .= ' '. mb_convert_encoding($title[$i],'GBK',"UTF-8"); } $string .="\r\n"; } foreach ( $data as $key =>$var) { for( $i = 0; $i < count($data[$key]); $i++ ){ $string .= ' '. mb_convert_encoding($data[$key][$i],'GBK',"UTF-8"); } $string .="\r\n"; } # 测试点 echo $this->file_dir.$file,'-----123---------<br/>'; $fp = fopen($this->file_dir.$file, "a+"); fwrite($fp,$string); fclose($fp); return true; } } //************************************** //测试 $dir ='E:\dev\ '; $file_name = "test"; $file_type = "txt"; $title = array("name","sex","age"); $data[] = array("tom","boy",20); $data[] = array("perry","girl",20); $file = new createFile($dir); $flag = $file-> create_file($file_name,$file_type,$title,$data); if($flag == true){ echo "生成成功"; }else{ echo "生成失败"; } ?> </body> </html>
You need to create a new dev folder under the E drive, and then run it to see the effect. If the operation is successful, a test.txt file will be generated under the dev folder and write the following content in it:
name sex age
tom boy 20
perry girl 20
The above is the entire content of this article. I hope it will be helpful to everyone in learning PHP programming.