目次
目次
ディレクトリのイメージ
ドキュメントルート
└upload.php
└file/
まずCSVファイルをサーバーに設置
$this_path = dirname(__FILE__); $uploaddir = $this_path.'/file/'; if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file ($_FILES["upfile"]["tmp_name"], $uploaddir . "data.csv")) { chmod($uploaddir . "data.csv", 0644); echo "保存完了"; } else { echo "失敗"; } } else { echo "ファイルが選択されていません。"; }
csvデータを配列に格納する。
$data = fopen("./file/data.csv", "r"); $hoge_arr = array(); $data_arr = array(); while($line = fgetcsv($data)){ // 文字化け対策 はしご高など特殊旧漢字の文字化けを防止する mb_convert_variables("UTF-8", "SJIS-win", $line);</pre> <pre>// 読み込んだ結果を格納 $hoge_arr[] = $line; } fclose($data);
前処理
function cast($data){ $result = "'".$data."'"; return $result; }
配列を詰め込む
for ($i = 0; $i < $max; $i++) { $data_arr["test"] = self::cast($hoge_arr[$i][0]); $data_arr["data"] = self::cast($hoge_arr[$i]); }
mysqlにインサート
$sql = "INSERT INTO test_tbl ( `test`, `data` ) VALUES ( {$data_arr["test"]}, {$data_arr["data"]}, )"; $stmt = $pdo -> prepare($sql); $stmt -> execute();