php生成txt文件实例代码介绍


Posted in PHP onApril 28, 2016

这是一个朋友过来的 php 生成 txt 文件代码,这只是一个实例,需要我来给他生成多个 txt 文件实例的,但我觉得他这个代码有点意思,所以就分享上来了。

先说下这个 php 生成 txt 文件代码都是什么功能吧,肯定是要生成 txt 文件的,有点废话了,不说其它的了,这个 php 代码可以生成指定目录下的一个 txt 文件,并在 txt 文件里面写入三行文字,这个是在 php 里面定义好的。

夏日博客分享下实例的代码如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<?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 "生成失败"; 
}
?>
</body>
</html>

需要在 E 盘下面新建 dev 文件夹,然后进行运行即可看到效果,运行成功,会在 dev 文件夹下面生成一个 test.txt 的文件,并在里面写入如下的内容:

name sex age
tom boy 20
perry girl 20

以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。

PHP 相关文章推荐
1.PHP简介
Oct 09 PHP
提升PHP执行速度全攻略(下)
Oct 09 PHP
PHP语言中global和$GLOBALS[]的分析 之二
Feb 02 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
Aug 15 PHP
WordPress中自定义后台管理界面配色方案的小技巧
Dec 29 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
Jun 12 PHP
Laravel的throttle中间件失效问题解决方法
Oct 09 PHP
PHP实现登录搜狐广告获取广告联盟数据的方法【附demo源码】
Oct 14 PHP
php中Ioc(控制反转)和Di(依赖注入)
May 07 PHP
PHP简单获取随机数的常用方法小结
Jun 07 PHP
Laravel手动返回错误码示例
Oct 22 PHP
php libevent 功能与使用方法详解
Mar 04 PHP
100行PHP代码实现socks5代理服务器
Apr 28 #PHP
Yii2实现ajax上传图片插件用法
Apr 28 #PHP
thinkphp3.2实现上传图片的控制器方法
Apr 28 #PHP
PHP简单实现文本计数器的方法
Apr 28 #PHP
Yii2 rbac权限控制之菜单menu实例教程
Apr 28 #PHP
Yii2搭建后台并实现rbac权限控制完整实例教程
Apr 28 #PHP
PHP在线调试执行的实现方法(附demo源码)
Apr 28 #PHP
You might like
PHP memcache扩展的三种安装方法
2009/04/26 PHP
php中截取中文字符串的代码小结
2011/07/17 PHP
php中Y2K38的漏洞解决方法实例分析
2014/09/22 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
flash+jQuery实现可关闭及重复播放的压顶广告
2015/04/15 Javascript
JavaScript实现获得所有兄弟节点的方法
2015/07/23 Javascript
jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用
2016/01/23 Javascript
javascript函数命名的三种方式及区别介绍
2016/03/22 Javascript
jQuery插件简单学习实例教程
2016/07/01 Javascript
javascript解析ajax返回的xml和json格式数据实例详解
2017/01/05 Javascript
遍历json获得数据的几种方法小结
2017/01/21 Javascript
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
详解Vue 方法与事件处理器
2017/06/20 Javascript
Javascript中从学习bind到实现bind的过程
2018/01/05 Javascript
Angular整合zTree的示例代码
2018/01/24 Javascript
Mac下通过brew安装指定版本的nodejs教程
2018/05/17 NodeJs
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
2020/03/10 Javascript
javascript设计模式 ? 单例模式原理与应用实例分析
2020/04/09 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
[03:24]DOTA2超级联赛专访hao 大翻盘就是逆袭
2013/05/24 DOTA
网站渗透常用Python小脚本查询同ip网站
2017/05/08 Python
Python中扩展包的安装方法详解
2017/06/14 Python
Django 配置多站点多域名的实现步骤
2019/05/17 Python
Python 窗体(tkinter)按钮 位置实例
2019/06/13 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
HTML5 source标签:媒介元素定义媒介资源
2018/01/29 HTML / CSS
斯凯奇美国官网:SKECHERS美国
2016/08/20 全球购物
团日活动总结书
2014/05/08 职场文书
阅兵口号
2014/06/19 职场文书
2014年党员自我评议对照检查材料
2014/09/20 职场文书
防汛工作情况汇报
2014/10/28 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
任命书格式模板
2015/09/22 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书
只用20行Python代码实现屏幕录制功能
2021/06/02 Python