php生成txt文件标题及内容的方法


Posted in PHP onJanuary 16, 2014
<?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 "生成失败"; 
} 
?>
PHP 相关文章推荐
PHP4和PHP5性能测试和对比 测试代码与环境
Aug 17 PHP
php5 non-thread-safe和thread-safe这两个版本的区别分析
Mar 13 PHP
PHP5中GD库生成图形验证码(有汉字)
Jul 28 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
Nov 26 PHP
php获取YouTube视频信息的方法
Feb 11 PHP
使用新浪微博API的OAuth认证发布微博实例
Mar 27 PHP
PHP SOCKET编程详解
May 22 PHP
JSON用法之将PHP数组转JS数组,JS如何接收PHP数组
Oct 08 PHP
Thinkphp实现自动验证和自动完成
Dec 19 PHP
PHP实现数组array转换成xml的方法
Jul 19 PHP
Yii2.0建立公共方法简单示例
Jan 29 PHP
php实现简易计算器
Aug 28 PHP
PHP获取php,mysql,apche的版本信息示例代码
Jan 16 #PHP
php获取淘宝分类id示例
Jan 16 #PHP
php生成数组的使用示例 php全组合算法
Jan 16 #PHP
PHP 动态生成静态HTML页面示例代码
Jan 15 #PHP
php中文乱码怎么办如何让浏览器自动识别utf-8
Jan 15 #PHP
php读取mysql的简单实例
Jan 15 #PHP
PHP限制页面只能在微信自带浏览器访问的代码
Jan 15 #PHP
You might like
一个oracle+PHP的查询的例子
2006/10/09 PHP
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
2012/05/06 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
Laravel框架创建路由的方法详解
2019/09/04 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
2019/10/11 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
Extjs学习笔记之四 工具栏和菜单
2010/01/07 Javascript
js最简单的拖拽效果实现代码
2010/09/24 Javascript
JavaScript获取onclick、onchange等事件值的代码
2013/07/22 Javascript
JS去掉第一个字符和最后一个字符的实现代码
2014/02/20 Javascript
js中的caller和callee属性介绍和例子
2014/06/07 Javascript
浅谈javascript中this在事件中的应用
2015/02/15 Javascript
js实现精美的图片跟随鼠标效果实例
2015/05/16 Javascript
详解vue2.0 transition 多个元素嵌套使用过渡
2017/06/19 Javascript
Angular4学习教程之DOM属性绑定详解
2018/01/04 Javascript
vue 设置路由的登录权限的方法
2018/07/03 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
python套接字流重定向实例汇总
2016/03/03 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
python爱心表白 每天都是浪漫七夕!
2018/08/18 Python
Python 数值区间处理_对interval 库的快速入门详解
2018/11/16 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
Kathmandu澳洲户外商店:新西兰户外运动品牌
2017/11/12 全球购物
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
手工制作的意大利皮革运动鞋:KOIO
2020/01/05 全球购物
都柏林通行卡/城市通票:The Dublin Pass
2020/02/16 全球购物
酒店开业庆典主持词
2014/03/21 职场文书
林肯就职演讲稿
2014/05/19 职场文书
银行求职信范文
2014/05/26 职场文书
身边的榜样活动方案
2014/08/20 职场文书
2014办公室年度工作总结
2014/12/09 职场文书
小班上学期幼儿评语
2014/12/30 职场文书
《黑岩★★射手 DAWN FALL》BD发售宣传CM公开
2022/04/04 日漫
SONY600GR,国产收音机厂商永远的痛
2022/04/05 无线电
windows10声卡驱动怎么安装?win10声卡驱动安装操作步骤教程
2022/08/05 数码科技
浅谈音视频 pts dts基本概念及理解
2022/08/05 数码科技