將資料整理為每行一筆、欄位以逗號分隔的純文字檔(yourdate.txt):
aaa,bbb,ccc,ddd,eee
fff,ggg,hhh,iii,jjj,kkk
loaddate.php<?php
$hostname = "localhost";
$username = "yourname";
$password = "yourpwd";
$dbname = "yourdb";
$conn = mysql_connect($hostname, $username, $password);
mysql_select_db($dbname, $conn);
$lines = file("yourdate.txt");
$count = count($lines);
for ($i = 0; $i < $count; $i++) {
$fields = explode(",", $lines[$i]);
// 假設目標表 ip 有 5 個欄位,請依實際結構調整
$sql = "INSERT INTO ip VALUES ('"
. implode("','", $fields) . "')";
mysql_query($sql, $conn);
}
mysql_close($conn);
echo "ok!";
?>
file() 將整個檔案讀入陣列,每行為一元素。explode() 依分隔符拆分欄位。implode() 快速組合 VALUES 字串,避免手動索引錯誤。mysqli 或 PDO 預處理語句,防止 SQL 注入並提升效能。大量資料匯入時,優先考慮 MySQL 原生 LOAD DATA INFILE:
LOAD DATA INFILE 'yourdate.txt'
INTO TABLE ip
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
速度比 PHP 迴圈快數十倍,且無需撰寫程式碼。