溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在php項(xiàng)目中實(shí)現(xiàn)一個(gè)生成txt文件功能

發(fā)布時(shí)間:2021-01-15 17:05:00 來源:億速云 閱讀:149 作者:Leah 欄目:開發(fā)技術(shù)

怎么在php項(xiàng)目中實(shí)現(xiàn)一個(gè)生成txt文件功能?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。

代碼如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>無標(biāo)題文檔</title>
</head>
<body>
<?php 
/** 
*1.前幾天一哥們工作中他們領(lǐng)導(dǎo)讓他寫一個(gè)上生成文件的類:生成文件,文件類型支持:txt、html、csv、pdf、doc(或者docx)。 
* 
*2.生成的內(nèi)容是一張表格(像html中的table),參數(shù)為:生成文件的類型、生成內(nèi)容的標(biāo)題(數(shù)組),生成內(nèi)容(數(shù)組,和標(biāo)題相對(duì)應(yīng))。 
*/
/************************************************* 
* class name:createFile 
* description:create different type files 
* author:fenghuo 
* date:2013-11-12 
************************************************/
/** 
*3.我利用晚上的時(shí)間幫他就整理了一個(gè)生成txt的文件類. 
***/
class createFile{ 
public $file_type; 
public $file_name; 
public $file_dir; 
/** 
* 構(gòu)造函數(shù):初始化生成文件的目錄 
*/
public function __construct($file_dir){ 
$this->file_dir = $file_dir; 
} 
/** 
* 生成文件的入口函數(shù) 
* @string $file_name 文件名 
* @string $file_type 文件類型 
* @array $title 生成內(nèi)容的標(biāo)題行 
* @array $data 生成內(nèi)容 
*/
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; 
# 測(cè)試點(diǎn) 
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 標(biāo)題 
*@array $data 內(nèi)容 
*/
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"; 
} 
# 測(cè)試點(diǎn) 
echo $this->file_dir.$file,'-----123---------<br/>'; 
$fp = fopen($this->file_dir.$file, "a+"); 
fwrite($fp,$string); 
fclose($fp); 
return true; 
}
}
//************************************** 
//測(cè)試 
$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>

關(guān)于怎么在php項(xiàng)目中實(shí)現(xiàn)一個(gè)生成txt文件功能問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI