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 相关文章推荐
信用卡效验程序
Oct 09 PHP
PHP 第一节 php简介
Apr 28 PHP
PHP 读取Postgresql中的数组
Apr 14 PHP
phpphp图片采集后按原路径保存图片示例
Feb 18 PHP
解决cPanel无法安装php5.2.17
Jun 22 PHP
PHP实现递归复制整个文件夹的类实例
Aug 03 PHP
盘点PHP和ASP.NET的10大对比!
Dec 24 PHP
PHP简单预防sql注入的方法
Sep 27 PHP
Zend Framework框架实现类似Google搜索分页效果
Nov 25 PHP
PHP闭包定义与使用简单示例
Apr 13 PHP
Laravel框架自定义验证过程实例分析
Feb 01 PHP
Linux系统下安装PHP7.3版本
Jun 26 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
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
PHP无限分类的类
2007/01/02 PHP
ThinkPHP里用U方法调用js文件实例
2015/06/18 PHP
PHP实现PDO操作mysql存储过程示例
2019/02/13 PHP
PHP Ajax跨域问题解决方案代码实例
2020/08/01 PHP
js一组验证函数
2008/12/20 Javascript
学习ExtJS form布局
2009/10/08 Javascript
基于jQuery实现表格数据的动态添加与统计的代码
2011/01/31 Javascript
js中页面的重新加载(当前页面/上级页面)及frame或iframe元素引用介绍
2013/01/24 Javascript
Ext GridPanel加载完数据后进行操作示例代码
2014/06/17 Javascript
Javascript window对象详解
2014/11/12 Javascript
node.js中的fs.fchmod方法使用说明
2014/12/16 Javascript
关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
2015/10/12 Javascript
jQuery实现的超简单点赞效果实例分析
2015/12/31 Javascript
NodeJs——入门必看攻略
2016/06/27 NodeJs
JS button按钮实现submit按钮提交效果
2016/11/01 Javascript
AngularJS入门教程之数据绑定原理详解
2016/11/02 Javascript
ES6中Math对象新增的方法实例详解
2017/04/25 Javascript
让微信小程序支持ES6中Promise特性的方法详解
2017/06/13 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
Webpack按需加载打包chunk命名的方法
2019/09/22 Javascript
json_decode 索引为数字时自动排序问题解决方法
2020/03/28 Javascript
Node Express用法详解【安装、使用、路由、中间件、模板引擎等】
2020/05/13 Javascript
JS如何操作DOM基于表格动态展示数据
2020/10/15 Javascript
python3.6实现学生信息管理系统
2019/02/21 Python
Python面向对象程序设计类的多态用法详解
2019/04/12 Python
Python学习笔记之pandas索引列、过滤、分组、求和功能示例
2019/06/03 Python
Python中pymysql 模块的使用详解
2019/08/12 Python
如何把外网python虚拟环境迁移到内网
2020/05/18 Python
Python批量获取并保存手机号归属地和运营商的示例
2020/10/09 Python
在pycharm中使用pipenv创建虚拟环境和安装django的详细教程
2020/11/30 Python
matplotlib grid()设置网格线外观的实现
2021/02/22 Python
使用css3实现超炫的loading加载动画效果
2014/05/07 HTML / CSS
马云的职业生涯规划之路
2014/01/01 职场文书
营销总经理岗位职责范本
2014/09/02 职场文书
结婚保证书(三从四德)
2015/02/26 职场文书