銀行api 作成 01。 PHPでcsvをエクスポートして、データベースへ挿入
<?php
// エラーを出力する
ini_set('display_errors', "On");
// *** エックスサーバー用 接続情報
$dsn = 'サーバー情報';
$user = 'サーバーのユーザー名';
$password = 'サーバーのパスワード';
// ====== CSV データ インポート ======
$idx = 0;
$arr_1 = ;
$arr_2 = ;
$arr_3 = ;
$arr_4 = ;
$arr_5 = [];
// ================== CSV ファイル import ===============
// 読み込みファイルのパス & r => 読み込み
// ファイルの内容を読み込み file_get_contents
// ファイルに書き込む
try {
// PDO オブジェクト作成
$pdo = new PDO($dsn, $user, $password);
// トランザクション開始
$pdo->beginTransaction();
bank_code, bank_num, bank_kana, bank_name, bank_item
) VALUES";
$idx = 0;
// ========= CSVファイルを 1行ずつ ファイルに読み込む =========
while($data = fgetcsv($file_handler)) {
$arr_1[$idx] = $data[0];
$arr_2[$idx] = $data[1];
$arr_3[$idx] = $data[2];
$arr_4[$idx] = $data[3];
$arr_5[$idx] = $data[4];
// ===== 配列の最後の要素
if ($idx === 31237) {
/*
$sql .= '(' . ':bank_code' . $idx . ',' . ':bank_num' . $idx . ',' . ':bank_kana' . $idx . ',' .
':bank_name' . $idx . ',' . ':bank_item' . $idx . ')';
*/
} else {
/*
$sql .= ' (' . ':bank_code' . $idx . ',' . ':bank_num' . $idx . ',' . ':bank_kana' . $idx . ',' .
':bank_name' . $idx . ',' . ':bank_item' . $idx . ') ,';
*/
}
// var_dump($sql . "<br /><br />");
$idx += 1;
}
$stmt = $pdo->prepare($sql);
//======= バインド index 用
$j = 0;
foreach($arr_1 as $arr1) {
$stmt->bindValue(':bank_code' . (string)$j, $arr1, PDO::PARAM_STR);
$stmt->bindValue(':bank_num' . (string)$j, $arr_2[$j], PDO::PARAM_STR);
$stmt->bindValue(':bank_kana' . (string)$j, $arr_3[$j], PDO::PARAM_STR);
$stmt->bindValue(':bank_name' . (string)$j, $arr_4[$j], PDO::PARAM_STR);
$stmt->bindValue(':bank_item' . (string)$j, $arr_5[$j], PDO::PARAM_STR);
/*
var_dump($arr1 . "<br />");
var_dump($arr_2[$j] . "<br />");
var_dump($arr_3[$j]. "<br />");
var_dump($arr_4[$j] . "<br />");
var_dump($arr_5[$j] . "<br /><br />");
*/
$j += 1;
}
var_dump($stmt);
// SQL 実行
$res = $stmt->execute();
var_dump($res);
// ======= (トランザクション) コミット =========
if( $res ) {
$pdo->commit();
print("コミットOK");
} else {
print("コミットNG");
}
} catch(PDOException $e) {
print('Error:'.$e->getMessage());
$pdo->rollBack();
} finally {
$pdo = null;
}
?>