您的位置:首页 > 编程语言 > PHP开发

php生成txt文件标题及内容

2014-01-17 05:31 316 查看
php如何生成txt文件标题及内容,分享一个不错的示例。

代码:

<?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 

* edit: www.jbxue.com

************************************************/ 

/** 

*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)) 

{ www.jbxue.com

$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 "生成失败"; 



?> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: