當前位置: 首頁> 最新文章列表> PHP表單導出教程:輕鬆實現CSV、JSON、XML及數據庫導出

PHP表單導出教程:輕鬆實現CSV、JSON、XML及數據庫導出

M66 2025-10-28

在PHP中導出表單的完整方法

在Web開發中,導出表單數據是一個常見的功能場景,例如保存用戶提交的信息、生成報表文件或備份數據。本文將介紹如何使用PHP導出表單數據為多種格式,如CSV、JSON、XML文件,或直接寫入數據庫。

創建HTML表單

首先,需要一個簡單的HTML表單,用於收集用戶輸入數據:

<form action="export.php" method="post">
  <input type="text" name="name" placeholder="名稱">
  <input type="email" name="email" placeholder="電子郵件">
  <input type="submit" value="導出">
</form>

接收並處理表單數據

export.php文件中,使用$_POST獲取用戶提交的表單內容:

 $name = $_POST[&#39;name&#39;];
$email = $_POST[&#39;email&#39;];

導出數據的多種方式

根據實際需求,可以選擇不同的數據導出方式。

導出為CSV文件

使用PHP內置的文件寫入函數生成一個CSV文件:

 $fh = fopen(&#39;export.csv&#39;, &#39;w&#39;);
fputcsv($fh, array(&#39;Name&#39;, &#39;Email&#39;));
fputcsv($fh, array($name, $email));
fclose($fh);

導出為JSON文件

JSON是一種輕量級的數據格式,適合前後端數據交換:

 $data = array(&#39;name&#39; => $name, &#39;email&#39; => $email);
$json = json_encode($data);
file_put_contents(&#39;export.json&#39;, $json);

導出為XML文件

若需要將數據導出為XML格式,可使用SimpleXMLElement類:

 $xml = new SimpleXMLElement(&#39;<data></data> &#39;);
$xml->addChild(&#39;name&#39;, $name);
$xml->addChild(&#39;email&#39;, $email);
$xml->asXML(&#39;export.xml&#39;);

保存到數據庫

若希望數據長期保存,可選擇將表單內容寫入數據庫:

 $servername = "localhost";
$username = "root";
$password = "";
$database = "form_data";

$conn = new mysqli($servername, $username, $password, $database);

if ($conn->connect_error) {
  die("連接失敗: " . $conn->connect_error);
}

$sql = "INSERT INTO users (name, email) VALUES (?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ss", $name, $email);
$stmt->execute();
$conn->close();

輸出導出的文件

如果希望用戶下載生成的文件,可以通過設置響應頭實現:

 header(&#39;Content-Type: application/csv&#39;);
header(&#39;Content-Disposition: attachment; filename=export.csv&#39;);
readfile(&#39;export.csv&#39;);

總結

通過以上方法,我們可以靈活地在PHP中實現表單數據的導出功能。無論是生成CSV、JSON、XML文件,還是將數據存入數據庫,都可以根據項目需求自由選擇。掌握這些技巧,將大大提高Web數據處理與導出效率。