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中通过加号合并数组的一个简单方法分享
Jan 27 PHP
PHP中计算字符串相似度的函数代码
Dec 29 PHP
PHP入门之常量简介和系统常量
May 12 PHP
支付宝接口开发集成支付环境小结
Mar 17 PHP
PHP响应post请求上传文件的方法
Dec 17 PHP
我整理的PHP 7.0主要新特性
Jan 07 PHP
php网页版聊天软件实现代码
Aug 12 PHP
PHP Oauth授权和本地加密实现方法
Aug 12 PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 PHP
php+mysql实现简单登录注册修改密码网页
Nov 30 PHP
基于Laravel 多个中间件的执行顺序详解
Oct 21 PHP
PHP单元测试配置与使用方法详解
Dec 27 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
Yii中使用PHPExcel导出Excel的方法
2014/12/26 PHP
PHP处理会话函数大总结
2015/08/05 PHP
ThinkPHP框架里隐藏index.php
2016/04/12 PHP
PHP更安全的密码加密机制Bcrypt详解
2017/06/18 PHP
七种PHP开发环境搭建工具
2020/06/28 PHP
学习YUI.Ext 第二天
2007/03/10 Javascript
用js实现键盘方向键翻页功能的代码
2007/06/03 Javascript
超轻量级的基于jquery的三级展开列表
2011/04/26 Javascript
JS函数实现动态添加CSS样式表文件
2012/12/15 Javascript
JS 获取select(多选下拉)中所选值的示例代码
2013/08/02 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
JS实现状态栏跑马灯文字效果代码
2015/10/24 Javascript
jQuery使用$.ajax进行即时验证实例详解
2015/12/11 Javascript
Less 安装及基本用法
2018/05/05 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
nodejs基础之常用工具模块util用法分析
2018/12/26 NodeJs
js如何实现元素曝光上报
2019/08/07 Javascript
layui动态渲染生成select的option值方法
2019/09/23 Javascript
vue-router的钩子函数用法实例分析
2019/10/26 Javascript
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
[01:03:56]Mineski vs TNC 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
2018/05/24 Python
python 请求服务器的实现代码(http请求和https请求)
2018/05/25 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
Python中list循环遍历删除数据的正确方法
2019/09/02 Python
利用Python的sympy包求解一元三次方程示例
2019/11/22 Python
浅谈Python中的生成器和迭代器
2020/06/19 Python
详解Canvas实用库Fabric.js使用手册
2019/01/07 HTML / CSS
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
情况说明书格式范文
2014/05/06 职场文书
大学英语专业求职信
2014/06/21 职场文书
街道办残联2016年助残日活动总结
2016/04/01 职场文书
Django使用echarts进行可视化展示的实践
2021/06/10 Python
python人工智能human learn绘图可创建机器学习模型
2021/11/23 Python