知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

php生成txt文件标题及内容

发布时间:2014-09-05 10:22:54作者:知识屋

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

 

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜