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 相关文章推荐
十天学会php之第十天
Oct 09 PHP
实现“上一页”和“下一页按钮
Oct 09 PHP
PHP写MySQL数据 实现代码
Jun 15 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
Aug 20 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
PHP正则表达式入门教程(推荐)
May 18 PHP
PHP处理数组和XML之间的互相转换
Jun 02 PHP
原生JS实现Ajax通过POST方式与PHP进行交互的方法示例
May 12 PHP
php原生数据库分页的代码实例
Feb 18 PHP
php实现的顺序线性表示例
May 04 PHP
Laravel中10个有用的用法小结
May 06 PHP
PHP时间相关常用函数用法示例
Jun 03 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
PHP QRCODE生成彩色二维码的方法
2016/05/19 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
2019/10/12 PHP
TP5框架实现的数据库备份功能示例
2020/04/05 PHP
常用js脚本
2006/12/03 Javascript
javascript setAttribute, getAttribute 在不同浏览器上的不同表现
2010/08/05 Javascript
ExtJs默认的字体大小改变的几种方法(自己整理)
2013/04/18 Javascript
JavaScript加入收藏夹功能(兼容IE、firefox、chrome)
2014/05/05 Javascript
JavaScript跨平台的开源框架NativeScript
2015/03/24 Javascript
JS遍历对象属性的方法示例
2017/01/10 Javascript
JavaScript实现左侧菜单效果
2017/12/14 Javascript
vue 使用自定义指令实现表单校验的方法
2018/08/28 Javascript
vue elementui form表单验证的实现
2018/11/11 Javascript
基于vue.js实现分页查询功能
2018/12/29 Javascript
Vue注册组件命名时不能用大写的原因浅析
2019/04/25 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
详解Vue中组件传值的多重实现方式
2019/08/16 Javascript
vue excel上传预览和table内容下载到excel文件中
2019/12/10 Javascript
小结Python用fork来创建子进程注意事项
2014/07/03 Python
python中使用urllib2伪造HTTP报头的2个方法
2014/07/07 Python
Python实现CET查分的方法
2015/03/10 Python
Python 经典面试题 21 道【不可错过】
2018/09/21 Python
对python实时得到鼠标位置的示例讲解
2018/10/14 Python
python实现合并两个排序的链表
2019/03/03 Python
Python3安装Pillow与PIL的方法
2019/04/03 Python
Django Sitemap 站点地图的实现方法
2019/04/29 Python
如何实现更换Jupyter Notebook内核Python版本
2020/05/18 Python
简单了解python关键字global nonlocal区别
2020/09/21 Python
艺术爱好者的自我评价分享
2013/10/08 职场文书
总裁办公室主任职责
2014/01/02 职场文书
装修致歉信
2014/01/15 职场文书
幼儿园中班教学反思
2014/02/10 职场文书
安全责任书范文
2014/08/25 职场文书
党员先进事迹材料
2014/12/19 职场文书
三八红旗手事迹材料
2014/12/26 职场文书
2015年纪检监察工作总结
2015/04/08 职场文书
ubuntu下常用apt命令介绍
2022/06/05 Servers