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 相关文章推荐
一个高ai的分页函数和一个url函数
Oct 09 PHP
基于PHP array数组的教程详解
Jun 05 PHP
解析php函数method_exists()与is_callable()的区别
Jun 21 PHP
php获取中文拼音首字母类和函数分享
Apr 24 PHP
Codeigniter操作数据库表的优化写法总结
Jun 12 PHP
CodeIgniter表单验证方法实例详解
Mar 03 PHP
PHP7 新特性详细介绍
Sep 06 PHP
CodeIgniter框架验证码类库文件与用法示例
Mar 18 PHP
PHP Socket网络操作类定义与用法示例
Aug 30 PHP
PHP共享内存使用与信号控制实例分析
May 09 PHP
PHP getName()函数讲解
Feb 03 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
Mar 11 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 修改、增加xml结点属性的实现代码
2013/10/22 PHP
php顺序查找和二分查找示例
2014/03/27 PHP
php防止伪造数据从地址栏URL提交的方法
2014/08/24 PHP
Yii实现简单分页的方法
2016/04/29 PHP
ASP Json Parser修正版
2009/12/06 Javascript
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
2013/01/23 Javascript
禁用Tab键JS代码兼容Firefox和IE
2014/04/18 Javascript
字段太多jquey快速清空表单内容方法
2014/08/21 Javascript
JavaScript中pop()方法的使用教程
2015/06/09 Javascript
利用JS生成博文目录及CSS定制博客
2016/02/10 Javascript
js判断请求的url是否可访问,支持跨域判断的实现方法
2016/09/17 Javascript
JS中Safari浏览器中的Date
2017/07/17 Javascript
使用JavaScript实现链表的数据结构的代码
2017/08/02 Javascript
JS实现在文本指定位置插入内容的简单示例
2017/12/22 Javascript
vue绑定事件后获取绑定事件中的this方法
2018/09/15 Javascript
每周一练 之 数据结构与算法(Stack)
2019/04/16 Javascript
vue中实现弹出层动画效果的示例代码
2020/09/25 Javascript
javascript中layim之查找好友查找群组
2021/02/06 Javascript
[59:42]Secret vs Alliacne 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
以一段代码为实例快速入门Python2.7
2015/03/31 Python
教你用一行Python代码实现并行任务(附代码)
2018/02/02 Python
每天迁移MySQL历史数据到历史库Python脚本
2018/04/13 Python
python删除文件夹下相同文件和无法打开的图片
2019/07/16 Python
tensorboard实现同时显示训练曲线和测试曲线
2020/01/21 Python
TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现
2020/02/17 Python
python 的numpy库中的mean()函数用法介绍
2020/03/03 Python
matplotlib基础绘图命令之bar的使用方法
2020/08/13 Python
如何开发一个JQuery插件
2016/07/28 面试题
工业学校毕业生自荐书
2014/01/03 职场文书
生日派对邀请函
2014/01/13 职场文书
单位工作证明书格式
2014/10/04 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
JS如何使用剪贴板操作Clipboard API
2021/05/17 Javascript
Python实现随机生成迷宫并自动寻路
2021/06/13 Python
vue自定义右键菜单之全局实现
2022/04/09 Vue.js