csvでパスワードリストを読み取り、1行ずつハッシュ化したパスワードに変えて、新しいハッシュ化リストcsvを作る。
ハッシュ化はpassword_hash($value, PASSWORD_DEFAULT);で書く。
if (($handle = fopen("list.csv", "r")) !== FALSE) { while (($data = fgetcsv($handle))) { foreach ($data as $value) { $hashedpassword = password_hash($value, PASSWORD_DEFAULT); $list[] = array($value, $hashedpassword); } } fclose($handle); } $fp = fopen('new_list.csv', 'w'); foreach ($list as $fields) { fputcsv($fp, $fields); } fclose($fp); echo "done";
password1,$2y$10$9Bonz2Ou5aJ1eOJl8Nf9eOipsRRWLpPbesCn.05J.W/pu0vItQ2mW
password2,$2y$10$d4OP/5HRbNWnS2BJS7w4puvWWXCj4Y2dxAmp0wS2E84Mpvc2udCqK
password3,$2y$10$u7IghXiVsUsVarK.n46X3eqP/uAzYMmtPCXLynXtYYy5nUlSCC0b6
password4,$2y$10$qgaJzGVySJT6ll7k3I0ZwewX/ia.a2KVK3XLjH/VJuSXJ4nzdi4Fy
password5,$2y$10$VcejFdWMC6M/hI4BRZfyyeglttkqzbO41TZUexek6b58rxejgYcKG
password6,$2y$10$.lhQys3h4ukEGxn8azvzDu76l0KHNvjZYxAHfPcLu3zvshbHV78oC
password7,$2y$10$KVWoquH7WRj1bDn2l88vo.N845A4vwvuguMxRPX1G/m6uF9q63A5C
password8,$2y$10$PFDr/P4fpC0kmxQofbfb0.jHGDvQqJoRe8RPCyQlYkDozCLWhjCLy
password9,$2y$10$ZAvichguRHYMkc42fPVXVex8x7xp9/by/BDmOVaW6vRpvMSr7dIm6
password10,$2y$10$L09R/P2BX2ougk3rxHVqWelI/rJrFlTlkVr4RE7U/chw7tWZob1gu
$list[] = array($value, $hashedpassword); のところで、$hashedpasswordだけの配列を作るときは、$list[] = $hashedpasswordではなく、$list[] = array($hashedpassword);とする。
Ok, Not bad, keep going