>  기사  >  백엔드 개발  >  txt 파일_php 기술을 생성하는 PHP의 예제 코드 소개

txt 파일_php 기술을 생성하는 PHP의 예제 코드 소개

WBOY
WBOY원래의
2016-05-16 19:53:251265검색

이것은 친구가 찾아온 php 생성 txt 파일 코드입니다. 이것은 단지 예일 뿐입니다. 그를 위해 여러 개의 txt 파일 인스턴스를 생성해야 하는데 그의 코드가 좀 흥미롭다고 생각해서 공유했습니다.

먼저 txt 파일을 생성하는 이 PHP 코드의 기능에 대해 이야기하겠습니다. 이는 약간 말도 안되는 내용입니다. 이 PHP 코드는 지정된 디렉토리에 txt 파일을 생성할 수 있습니다. txt 파일에 세 줄의 텍스트를 작성합니다. 이는 php.ini에 정의되어 있습니다.

Summer Blog에서 공유한 예제의 코드는 다음과 같습니다.

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

E 드라이브 아래에 새로운 dev 폴더를 생성한 후 실행해야 효과를 볼 수 있습니다. 작업이 성공하면 dev 폴더 아래에 test.txt 파일이 생성되고 그 안에 다음 내용을 작성합니다. :

이름 성별 나이
톰보이 20
페리걸20

위 내용은 이 글의 전체 내용입니다. PHP 프로그래밍을 배우는 모든 분들께 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.