这是一个朋友过来的 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程序设计有所帮助。
本文地址:https://www.stayed.cn/item/2492
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我