はじめに
今回はLaravelを使って、都道府県と市町村データを全て挿入するコードの一例を紹介します。
前提条件
PHP 8.3
Laravel 11.4
実装方法について
都道府県と市町村のマイグレーションファイルはこんな感じ↓
都道府県のマイグレーションファイル
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('prefectures', function (Blueprint $table) {
$table->id();
$table->string('name')->comment('都道府県名');
$table->timestamps();
$table->softDeletes();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('prefectures');
}
};
市町村のマイグレーションファイル
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('municipalities', function (Blueprint $table) {
$table->id();
$table->foreignId('prefecture_id')->constrained();
$table->string('name')->comment('市町村名');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('municipalities');
}
};
Seederファイルはこんな感じ↓
都道府県のSeederファイル
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class PrefecturesSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$prefectures = [
'北海道',
'青森県',
'岩手県',
'宮城県',
'秋田県',
'山形県',
'福島県',
'茨城県',
'栃木県',
'群馬県',
'埼玉県',
'千葉県',
'東京都',
'神奈川県',
'新潟県',
'富山県',
'石川県',
'福井県',
'山梨県',
'長野県',
'岐阜県',
'静岡県',
'愛知県',
'三重県',
'滋賀県',
'京都府',
'大阪府',
'兵庫県',
'奈良県',
'和歌山県',
'鳥取県',
'島根県',
'岡山県',
'広島県',
'山口県',
'徳島県',
'香川県',
'愛媛県',
'高知県',
'福岡県',
'佐賀県',
'長崎県',
'熊本県',
'大分県',
'宮崎県',
'鹿児島県',
'沖縄県'
];
foreach ($prefectures as $prefecture) {
DB::table('prefectures')->insert(['name' => $prefecture]);
}
}
}
市町村のSeederファイル
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class MunicipalSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
// 全ての都道府県を取得
$prefectures = DB::table('prefectures')->select('id', 'name')->get();
// 都道府県ごとの市町村データ
$municipalitiesData = [
// 北海道エリア
'北海道' => $this->getHokkaido(),
// 東北エリア
'青森県' => $this->getAomori(),
'岩手県' => $this->getIwate(),
'宮城県' => $this->getMiyagi(),
'秋田県' => $this->getAkita(),
'山形県' => $this->getYamagata(),
'福島県' => $this->getFukushima(),
// 関東エリア
'東京都' => $this->getTokyo(),
'茨城県' => $this->getIbaragi(),
'栃木県' => $this->getTochigi(),
'群馬県' => $this->getGunma(),
'埼玉県' => $this->getSaitama(),
'千葉県' => $this->getChiba(),
'神奈川県' => $this->getKanagawa(),
'山梨県' => $this->getYamanashi(),
'長野県' => $this->getNagano(),
// 北陸エリア
'新潟県' => $this->getNiigata(),
'富山県' => $this->getToyama(),
'石川県' => $this->getIshikawa(),
'福井県' => $this->getFukui(),
// 中部エリア
'愛知県' => $this->getAichi(),
'岐阜県' => $this->getGifu(),
'静岡県' => $this->getShizuoka(),
'三重県' => $this->getMie(),
// 近畿エリア
'大阪府' => $this->getOsaka(),
'滋賀県' => $this->getShiga(),
'京都府' => $this->getKyoto(),
'兵庫県' => $this->getHyogo(),
'奈良県' => $this->getNara(),
'和歌山県' => $this->getWakayama(),
// 中国エリア
'広島県' => $this->getHiroshima(),
'鳥取県' => $this->getTottori(),
'島根県' => $this->getShimane(),
'岡山県' => $this->getOkayama(),
'山口県' => $this->getYamaguchi(),
// 四国エリア
'香川県' => $this->getKagawa(),
'徳島県' => $this->getTokushima(),
'愛媛県' => $this->getEhime(),
'高知県' => $this->getKouchi(),
// 九州エリア
'福岡県' => $this->getFukuoka(),
'佐賀県' => $this->getSaga(),
'長崎県' => $this->getNagasaki(),
'熊本県' => $this->getKumamoto(),
'大分県' => $this->getOita(),
'宮崎県' => $this->getMiyazaki(),
'鹿児島県' => $this->getKagoshima(),
// 沖縄エリア
'沖縄県' => $this->getOkinawa(),
];
// 市町村データを挿入
foreach ($prefectures as $prefecture) {
if (isset($municipalitiesData[$prefecture->name])) {
$municipalities = $municipalitiesData[$prefecture->name];
foreach ($municipalities as $item) {
DB::table('municipalities')->insert([
'prefecture_id' => $prefecture->id,
'name' => $item
]);
}
}
}
}
/**
* 沖縄の市町村を取得する
*
* @return array
*/
private function getOkinawa(): array
{
return [
'那覇市', '宜野湾市', '石垣市', '浦添市', '名護市', '糸満市', '沖縄市', '豊見城市', 'うるま市', '宮古島市', '南城市',
'国頭村', '大宜味村', '東村', '今帰仁村', '本部町', '恩納村', '宜野座村', '金武町', '伊江村',
'読谷村', '嘉手納町', '北谷町', '北中城村', '中城村', '西原町',
'与那原町', '南風原町', '久米島町', '渡嘉敷村', '座間味村', '粟国村', '渡名喜村', '南大東村', '北大東村', '伊平屋村', '伊是名村', '八重瀬町',
'多良間村',
'竹富町', '与那国町'
];
}
/**
* 福岡の市町村を取得する
*
* @return array
*/
private function getFukuoka(): array
{
return [
'赤村', '朝倉市', '芦屋町', '飯塚市', '糸島市', '糸田町', 'うきは市', '宇美町', '大川市', '大木町', '大任町', '大野城市', '大牟田市', '岡垣町', '小郡市', '遠賀町',
'春日市', '粕屋町', '嘉麻市', '川崎町', '香春町', '苅田町', '北九州市', '鞍手町', '久留米市', '桂川町', '上毛町', '古賀市', '小竹町',
'篠栗町', '志免町', '新宮町', '須恵町', '添田町',
'田川市', '太宰府市', '大刀洗町', '筑後市', '筑紫野市', '築上町', '筑前町', '東峰村',
'那珂川市', '中間市', '直方市',
'久山町', '広川町', '福岡市', '福智町', '福津市', '豊前市',
'水巻町', 'みやこ町', 'みやま市', '宮若市', '宗像市',
'柳川市', '八女市', '行橋市', '吉富町'
];
}
/**
* 佐賀県の市町村を取得する
*
* @return array
*/
private function getSaga(): array
{
return [
'佐賀市', '唐津市', '鳥栖市', '多久市', '伊万里市', '武雄市', '鹿島市', '小城市', '嬉野市', '神埼市',
'吉野ヶ里町', '基山町', '上峰町', 'みやき町', '玄海町', '有田町', '大町町', '江北町', '白石町', '太良町'
];
}
/**
* 長崎県の市町村を取得する
*
* @return array
*/
private function getNagasaki(): array
{
return [
'長崎市', '佐世保市', '島原市', '諫早市', '大村市', '平戸市', '松浦市', '対馬市', '壱岐市', '五島市',
'西海市', '雲仙市', '南島原市', '長与町', '時津町', '東彼杵町', '川棚町', '波佐見町', '小値賀町', '佐々町', '新上五島町'
];
}
/**
* 熊本県の市町村を取得する
*
* @return array
*/
private function getKumamoto(): array
{
return [
'熊本市', '八代市', '人吉市', '荒尾市', '水俣市', '玉名市', '山鹿市', '菊池市', '宇土市', '上天草市', '宇城市', '阿蘇市', '合志市',
'美里町', '玉東町', '和水町', '南関町', '長洲町', '大津町', '菊陽町', '南小国町', '小国町', '産山村', '高森町', '南阿蘇村', '西原村', '御船町',
'嘉島町', '益城町', '甲佐町', '山都町', '氷川町', '芦北町', '津奈木町', '錦町', 'あさぎり町', '多良木町', '湯前町', '水上村', '相良村', '五木村',
'山江村', '球磨村', '苓北町'
];
}
/**
* 大分県の市町村を取得する
*
* @return array
*/
private function getOita(): array
{
return [
'大分市', '別府市', '中津市', '日田市', '佐伯市', '臼杵市', '津久見市', '竹田市', '豊後高田市', '杵築市', '宇佐市', '豊後大野市', '由布市', '国東市',
'姫島村', '日出町', '九重町', '玖珠町'
];
}
/**
* 宮崎県の市町村を取得する
*
* @return array
*/
private function getMiyazaki(): array
{
return [
'宮崎市', '都城市', '延岡市', '日南市', '小林市', '日向市', '串間市', '西都市', 'えびの市',
'三股町', '高原町', '国富町', '綾町', '高鍋町', '新富町', '西米良村', '木城町', '川南町', '都農町',
'門川町', '諸塚村', '椎葉村', '美郷町', '高千穂町', '日之影町', '五ヶ瀬町'
];
}
/**
* 鹿児島県の市町村を取得する
*
* @return array
*/
private function getKagoshima(): array
{
return [
'鹿児島市', '鹿屋市', '枕崎市', '阿久根市', '出水市', '指宿市', '西之表市', '垂水市', '薩摩川内市', '日置市',
'曽於市', '霧島市', 'いちき串木野市', '南さつま市', '志布志市', '奄美市', '南九州市', '伊佐市', '姶良市',
'三島村', '十島村', 'さつま町', '長島町', '湧水町', '大崎町', '東串良町', '錦江町', '南大隅町', '肝付町'
];
}
/**
* 広島の市町村を取得する
*
* @return array
*/
private function getHiroshima(): array
{
return [
'広島市', '呉市', '竹原市', '三原市', '尾道市', '福山市', '府中市', '三次市', '庄原市', '大竹市', '東広島市', '廿日市市', '安芸高田市', '江田島市',
'府中町', '海田町', '熊野町', '坂町', '安芸太田町', '北広島町', '大崎上島町', '世羅町', '神石高原町'
];
}
/**
* 鳥取県の市町村を取得する
*
* @return array
*/
private function getTottori(): array
{
return [
'鳥取市', '米子市', '倉吉市', '境港市', '岩美町', '若桜町', '智頭町', '八頭町', '三朝町', '湯梨浜町', '琴浦町', '北栄町', '日吉津村', '大山町', '南部町', '伯耆町', '日南町', '日野町', '江府町'
];
}
/**
* 島根県の市町村を取得する
*
* @return array
*/
private function getShimane(): array
{
return [
'松江市', '浜田市', '出雲市', '益田市', '大田市', '安来市', '江津市', '雲南市',
'奥出雲町', '飯南町', '川本町', '美郷町', '邑南町', '津和野町', '吉賀町',
'海士町', '西ノ島町', '知夫村', '隠岐の島町'
];
}
/**
* 岡山県の市町村を取得する
*
* @return array
*/
private function getOkayama(): array
{
return [
'岡山市', '倉敷市', '津山市', '玉野市', '笠岡市', '井原市', '総社市', '高梁市', '新見市', '備前市',
'瀬戸内市', '赤磐市', '真庭市', '美作市', '浅口市', '和気町', '早島町', '里庄町', '矢掛町', '新庄村',
'鏡野町', '勝央町', '奈義町', '西粟倉村', '久米南町', '美咲町', '吉備中央町'
];
}
/**
* 山口県の市町村を取得する
*
* @return array
*/
private function getYamaguchi(): array
{
return [
'下関市', '宇部市', '山口市', '萩市', '防府市', '下松市', '岩国市', '光市', '長門市', '柳井市',
'美祢市', '周南市', '山陽小野田市', '周防大島町', '和木町', '上関町', '田布施町', '平生町', '阿武町'
];
}
/**
* 香川県の市町村を取得する
*
* @return array
*/
private function getKagawa(): array
{
return [
'高松市', '丸亀市', '坂出市', '善通寺市', '観音寺市', 'さぬき市', '東かがわ市', '三豊市',
'土庄町', '小豆島町', '三木町', '直島町', '宇多津町', '綾川町', '琴平町', '多度津町', 'まんのう町'
];
}
/**
* 徳島県の市町村を取得する
*
* @return array
*/
private function getTokushima(): array
{
return [
'徳島市', '鳴門市', '小松島市', '阿南市', '吉野川市', '阿波市', '美馬市', '三好市',
'勝浦町', '上勝町', '佐那河内村', '石井町', '神山町', '那賀町', '牟岐町', '美波町', '海陽町',
'松茂町', '北島町', '藍住町', '板野町', '上板町', 'つるぎ町', '東みよし町'
];
}
/**
* 愛媛県の市町村を取得する
*
* @return array
*/
private function getEhime(): array
{
return [
'今治市', '新居浜市', '西条市', '四国中央市', '上島町',
'松山市', '伊予市', '東温市', '久万高原町', '松前町', '砥部町',
'宇和島市', '八幡浜市', '大洲市', '西予市', '内子町', '伊方町', '松野町', '鬼北町', '愛南町'
];
}
/**
* 高知県の市町村を取得する
*
* @return array
*/
private function getKouchi(): array
{
return [
'高知市', '室戸市', '安芸市', '南国市', '土佐市', '須崎市', '宿毛市', '土佐清水市', '四万十市', '香南市', '香美市',
'東洋町', '奈半利町', '田野町', '安田町', '北川村', '馬路村', '芸西村', '本山町', '大豊町', '土佐町', '大川村',
'いの町', '仁淀川町', '中土佐町', '佐川町', '越知町', '檮原町', '日高村', '津野町', '四万十町', '大月町', '三原村', '黒潮町'
];
}
/**
* 大阪の市町村を取得する
*
* @return array
*/
private function getOsaka(): array
{
return [
'大阪市', '堺市', '能勢町', '豊能町', '池田市', '箕面市', '豊中市', '茨木市', '高槻市', '島本町',
'吹田市', '摂津市', '枚方市', '交野市', '寝屋川市', '守口市', '門真市', '四條畷市', '大東市',
'東大阪市', '八尾市', '柏原市', '和泉市', '高石市', '泉大津市', '忠岡町', '岸和田市', '貝塚市',
'熊取町', '泉佐野市', '田尻町', '泉南市', '阪南市', '岬町', '松原市', '羽曳野市', '藤井寺市',
'太子町', '河南町', '千早赤阪村', '富田林市', '大阪狭山市', '河内長野市'
];
}
/**
* 滋賀県の市町村を取得する
*
* @return array
*/
private function getShiga(): array
{
return [
'高島市', '長浜市', '米原市', '彦根市', '近江八幡市', '東近江市', '日野町', '竜王町',
'愛荘町', '豊郷町', '甲良町', '多賀町', '大津市', '草津市', '守山市', '栗東市',
'甲賀市', '野洲市', '湖南市'
];
}
/**
* 京都府の市町村を取得する
*
* @return array
*/
private function getKyoto(): array
{
return [
'京都市', '福知山市', '舞鶴市', '綾部市', '宇治市', '宮津市', '亀岡市', '城陽市',
'向日市', '長岡京市', '八幡市', '京田辺市', '京丹後市', '南丹市', '木津川市',
'大山崎町', '久御山町', '井手町', '宇治田原町', '笠置町', '和束町', '精華町', '南山城村',
'京丹波町', '伊根町', '与謝野町'
];
}
/**
* 兵庫県の市町村を取得する
*
* @return array
*/
private function getHyogo(): array
{
return [
'神戸市', '尼崎市', '西宮市', '芦屋市', '伊丹市', '宝塚市', '川西市', '三田市', '猪名川町',
'明石市', '加古川市', '高砂市', '稲美町', '播磨町', '西脇市', '三木市', '小野市', '加西市',
'加東市', '多可町', '姫路市', '神河町', '市川町', '福崎町', '相生市', 'たつの市', '赤穂市',
'宍粟市', '太子町', '上郡町', '佐用町', '豊岡市', '養父市', '朝来市', '香美町', '新温泉町',
'丹波篠山市', '丹波市', '洲本市', '南あわじ市', '淡路市'
];
}
/**
* 奈良県の市町村を取得する
*
* @return array
*/
private function getNara(): array
{
return [
'奈良市', '大和高田市', '大和郡山市', '天理市', '橿原市', '桜井市', '五條市', '御所市', '生駒市', '香芝市',
'葛城市', '宇陀市', '山添村', '平群町', '三郷町', '斑鳩町', '安堵町', '川西町', '三宅町', '田原本町',
'曽爾村', '御杖村', '高取町', '明日香村', '上牧町', '王寺町', '広陵町', '河合町', '吉野町', '大淀町',
'下市町', '黒滝村', '天川村', '野迫川村', '十津川村', '下北山村', '上北山村', '川上村', '東吉野村'
];
}
/**
* 和歌山県の市町村を取得する
*
* @return array
*/
private function getWakayama(): array
{
return [
'和歌山市', '海南市', '橋本市', '有田市', '御坊市', '田辺市', '新宮市', '紀の川市', '岩出市',
'紀美野町', 'かつらぎ町', '九度山町', '高野町', '湯浅町', '広川町', '有田川町', '美浜町', '日高町',
'由良町', '印南町', 'みなべ町', '日高川町', '白浜町', '上富田町', 'すさみ町', '那智勝浦町', '太地町',
'古座川町', '北山村', '串本町'
];
}
/**
* 愛知の市町村を取得する
*
* @return array
*/
private function getAichi(): array
{
return [
'名古屋市', '一宮市', '瀬戸市', '春日井市', '犬山市', '江南市', '小牧市', '稲沢市', '尾張旭市', '岩倉市', '豊明市',
'日進市', '清須市', '北名古屋市', '長久手市', '東郷町', '豊山町', '大口町', '扶桑町',
'津島市', '愛西市', '弥富市', 'あま市', '大治町', '蟹江町', '飛島村',
'半田市', '常滑市', '東海市', '大府市', '知多市', '阿久比町', '東浦町', '南知多町', '美浜町', '武豊町',
'岡崎市', '碧南市', '刈谷市', '豊田市', '安城市', '西尾市', '知立市', '高浜市', 'みよし市', '幸田町',
'豊橋市', '豊川市', '蒲郡市', '新城市', '田原市', '設楽町', '東栄町', '豊根村'
];
}
/**
* 岐阜県の市町村を取得する
*
* @return array
*/
private function getGifu(): array
{
return [
'安八町', '池田町', '揖斐川町', '恵那市', '大垣市', '大野町', '海津市', '各務原市', '笠松町', '可児市',
'川辺町', '北方町', '岐南町', '岐阜市', '郡上市', '下呂市', '神戸町', '坂祝町', '白川町', '白川村',
'関ケ原町', '関市', '高山市', '多治見市', '垂井町', '土岐市', '富加町', '中津川市', '羽島市',
'東白川村', '飛騨市', '七宗町', '瑞浪市', '瑞穂市', '御嵩町', '美濃加茂市', '美濃市', '本巣市',
'八百津町', '山県市', '養老町', '輪之内町'
];
}
/**
* 静岡県の市町村を取得する
*
* @return array
*/
private function getShizuoka(): array
{
return [
'浜松市', '磐田市', '掛川市', '袋井市', '湖西市', '御前崎市', '菊川市', '森町',
'静岡市', '島田市', '焼津市', '藤枝市', '牧之原市', '吉田町', '川根本町',
'沼津市', '熱海市', '三島市', '富士宮市', '富士市', '裾野市', '御殿場市', '伊東市', '伊豆市', '伊豆の国市', '函南町', '清水町', '長泉町', '小山町',
'下田市', '東伊豆町', '河津町', '南伊豆町', '松崎町', '西伊豆町'
];
}
/**
* 三重県の市町村を取得する
*
* @return array
*/
private function getMie(): array
{
return [
'桑名市', 'いなべ市', '木曽岬町', '東員町',
'四日市市', '菰野町', '朝日町', '川越町',
'鈴鹿市', '亀山市',
'津市',
'松阪市', '多気町', '明和町', '大台町',
'伊勢市', '鳥羽市', '志摩市', '玉城町',
'度会町', '大紀町', '南伊勢町',
'伊賀市', '名張市',
'尾鷲市', '紀北町',
'熊野市', '御浜町', '紀宝町'
];
}
/**
* 新潟県の市町村を取得する
*
* @return array
*/
private function getNiigata(): array
{
return [
'阿賀野市', '阿賀町', '粟島浦村', '出雲崎町', '糸魚川市', '魚沼市', '小千谷市',
'柏崎市', '刈羽村', '加茂市', '五泉市',
'佐渡市', '三条市', '新発田市', '上越市', '聖籠町', '関川村',
'胎内市', '田上町', '津南町', '燕市', '十日町市',
'長岡市', '新潟市',
'見附市', '南魚沼市', '妙高市', '村上市',
'弥彦村', '湯沢町'
];
}
/**
* 富山県の市町村を取得する
*
* @return array
*/
private function getToyama(): array
{
return [
'富山市', '高岡市', '射水市', '魚津市', '氷見市', '滑川市', '黒部市', '砺波市', '小矢部市', '南砺市', '舟橋村', '上市町', '立山町', '入善町', '朝日町'
];
}
/**
* 石川県の市町村を取得する
*
* @return array
*/
private function getIshikawa(): array
{
return [
'輪島市', '珠洲市', '穴水町', '能登町', '七尾市', '羽咋市', '志賀町', '宝達志水町', '中能登町', '金沢市', 'かほく市', '白山市', '野々市市', '津幡町', '内灘町', '小松市', '加賀市', '能美市', '川北町'
];
}
/**
* 福井県の市町村を取得する
*
* @return array
*/
private function getFukui(): array
{
return [
'あわら市', '池田町', '永平寺町', '越前市', '越前町', 'おおい町', '大野市', '小浜市', '勝山市', '坂井市',
'鯖江市', '高浜町', '敦賀市', '福井市', '南越前町', '美浜町', '若狭町'
];
}
/**
* 東京都の区市町村を取得する
*
* @return array
*/
private function getTokyo(): array
{
return [
'千代田区', '中央区', '港区', '新宿区', '文京区', '台東区', '墨田区', '江東区', '品川区', '目黒区', '大田区', '世田谷区',
'渋谷区', '中野区', '杉並区', '豊島区',
'北区', '荒川区', '板橋区', '練馬区',
'足立区', '葛飾区', '江戸川区',
'八王子市', '立川市', '武蔵野市', '三鷹市', '青梅市', '府中市', '昭島市', '調布市',
'町田市', '小金井市', '小平市', '日野市',
'東村山市', '国分寺市', '国立市', '西東京市',
'福生市', '狛江市', '東大和市', '清瀬市',
'東久留米市', '武蔵村山市', '多摩市', '稲城市',
'羽村市', 'あきる野市', '瑞穂町', '日の出町',
'奥多摩町', '檜原村',
'大島町', '新島村', '三宅村', '八丈町', '利島村', '神津島村', '御蔵島村', '青ヶ島村',
'小笠原村'
];
}
/**
* 茨城県の区市町村を取得する
*
* @return array
*/
private function getIbaragi(): array
{
return [
'水戸市', '日立市', '土浦市', '古河市', '石岡市', '結城市', '龍ケ崎市', '下妻市', '常総市', '常陸太田市',
'高萩市', '北茨城市', '笠間市', '取手市', '牛久市', 'つくば市', 'ひたちなか市', '鹿嶋市', '潮来市', '守谷市',
'常陸大宮市', '那珂市', '筑西市', '坂東市', '稲敷市', 'かすみがうら市', '桜川市', '神栖市', '行方市', '鉾田市',
'つくばみらい市', '小美玉市', '茨城町', '大洗町', '城里町', '東海村', '大子町', '美浦村', '阿見町', '河内町',
'八千代町', '五霞町', '境町', '利根町'
];
}
/**
* 栃木県の区市町村を取得する
*
* @return array
*/
private function getTochigi(): array
{
return [
'宇都宮市', '足利市', '栃木市', '佐野市', '鹿沼市', '日光市', '小山市', '真岡市', '大田原市', '矢板市',
'那須塩原市', 'さくら市', '那須烏山市', '下野市', '上三川町', '益子町', '茂木町', '市貝町', '芳賀町',
'壬生町', '野木町', '塩谷町', '高根沢町', '那須町', '那珂川町'
];
}
/**
* 群馬県の区市町村を取得する
*
* @return array
*/
private function getGunma(): array
{
return [
'前橋市', '高崎市', '桐生市', '伊勢崎市', '太田市', '沼田市', '館林市', '渋川市', '藤岡市', '富岡市',
'安中市', 'みどり市', '榛東村', '吉岡町', '上野村', '神流町', '下仁田町', '南牧村', '甘楽町',
'中之条町', '長野原町', '嬬恋村', '草津町', '高山村', '東吾妻町', '片品村', '川場村', '昭和村',
'みなかみ町', '玉村町', '板倉町', '明和町', '千代田町', '大泉町', '邑楽町'
];
}
/**
* 埼玉県の区市町村を取得する
*
* @return array
*/
private function getSaitama(): array
{
return [
'上尾市', '朝霞市', '伊奈町', '入間市', '小鹿野町', '小川町', '桶川市', '越生町',
'春日部市', '加須市', '神川町', '上里町', '川口市', '川越市', '川島町', '北本市',
'行田市', '久喜市', '熊谷市', '鴻巣市', '越谷市', 'さいたま市', '坂戸市', '幸手市',
'狭山市', '志木市', '白岡市', '杉戸町', '草加市', '秩父市', '鶴ヶ島市', 'ときがわ町',
'所沢市', '戸田市', '長瀞町', '滑川町', '新座市', '蓮田市', '鳩山町', '羽生市',
'飯能市', '東秩父村', '東松山市', '日高市', '深谷市', '富士見市', 'ふじみ野市', '本庄市',
'松伏町', '三郷市', '美里町', '皆野町', '宮代町', '三芳町', '毛呂山町', '八潮市',
'横瀬町', '吉川市', '吉見町', '寄居町', '嵐山町', '和光市', '蕨市'
];
}
/**
* 千葉県の区市町村を取得する
*
* @return array
*/
private function getChiba(): array
{
return [
'千葉市', '銚子市', '市川市', '船橋市', '館山市', '木更津市', '松戸市', '野田市', '茂原市', '成田市',
'佐倉市', '東金市', '旭市', '習志野市', '柏市', '勝浦市', '市原市', '流山市', '八千代市', '我孫子市',
'鴨川市', '鎌ケ谷市', '君津市', '富津市', '浦安市', '四街道市', '袖ケ浦市', '八街市', '印西市', '白井市',
'富里市', '南房総市', '匝瑳市', '香取市', '山武市', 'いすみ市', '大網白里市', '酒々井町', '栄町', '神崎町',
'多古町', '東庄町', '九十九里町', '芝山町', '横芝光町', '一宮町', '睦沢町', '長生村', '白子町', '長柄町',
'長南町', '大多喜町', '御宿町', '鋸南町'
];
}
/**
* 神奈川県の区市町村を取得する
*
* @return array
*/
private function getKanagawa(): array
{
return [
'横浜市', '川崎市', '横須賀市', '鎌倉市', '逗子市', '三浦市', '葉山町',
'相模原市', '厚木市', '大和市', '海老名市', '座間市', '綾瀬市', '愛川町', '清川村',
'平塚市', '藤沢市', '茅ヶ崎市', '秦野市', '伊勢原市', '寒川町', '大磯町', '二宮町',
'小田原市', '南足柄市', '中井町', '大井町', '松田町', '山北町', '開成町', '箱根町', '真鶴町', '湯河原町'
];
}
/**
* 山梨県の区市町村を取得する
*
* @return array
*/
private function getYamanashi(): array
{
return [
'甲府市', '富士吉田市', '都留市', '山梨市', '大月市', '韮崎市', '南アルプス市', '北杜市', '甲斐市', '笛吹市',
'上野原市', '甲州市', '中央市', '市川三郷町', '早川町', '身延町', '南部町', '富士川町', '昭和町', '道志村',
'西桂町', '忍野村', '山中湖村', '鳴沢村', '富士河口湖町', '小菅村', '丹波山村'
];
}
/**
* 長野県の区市町村を取得する
*
* @return array
*/
private function getNagano(): array
{
return [
'小諸市', '佐久市', '小海町', '佐久穂町', '川上村', '南牧村', '南相木村', '北相木村', '軽井沢町', '御代田町', '立科町',
'上田市', '東御市', '長和町', '青木村', '岡谷市', '諏訪市', '茅野市', '下諏訪町', '富士見町', '原村',
'伊那市', '駒ケ根市', '辰野町', '箕輪町', '飯島町', '南箕輪村', '中川村', '宮田村',
'飯田市', '松川町', '高森町', '阿南町', '阿智村', '平谷村', '根羽村', '下條村', '売木村', '天龍村',
'泰阜村', '喬木村', '豊丘村', '大鹿村', '上松町', '南木曽町', '木曽町', '木祖村', '王滝村', '大桑村',
'松本市', '塩尻市', '安曇野市', '麻績村', '生坂村', '山形村', '朝日村', '筑北村',
'大町市', '池田町', '松川村', '白馬村', '小谷村', '長野市', '須坂市', '千曲市', '坂城町',
'小布施町', '高山村', '信濃町', '飯綱町', '小川村', '中野市', '飯山市', '山ノ内町', '木島平村', '野沢温泉村', '栄村'
];
}
/**
* 青森県の区市町村を取得する
*
* @return array
*/
private function getAomori(): array
{
return [
'青森市', '鰺ヶ沢町', '今別町', '田舎館村', '板柳町', '大鰐町', '大間町', 'おいらせ町',
'風間浦村', '黒石市', '五所川原市', '五戸町',
'佐井村', '三戸町', '七戸町', '新郷村', '外ヶ浜町',
'田子町', 'つがる市', '鶴田町', '十和田市', '東北町',
'中泊町', '南部町', '西目屋村', '野辺地町',
'八戸市', '階上町', '弘前市', '平川市', '平内町', '東通村', '深浦町', '藤崎町',
'三沢市', 'むつ市',
'蓬田村', '横浜町',
'六戸町', '六ヶ所村'
];
}
/**
* 岩手県の区市町村を取得する
*
* @return array
*/
private function getIwate(): array
{
return [
'盛岡市', '宮古市', '大船渡市', '花巻市', '北上市', '久慈市', '遠野市', '一関市', '陸前高田市', '釜石市',
'二戸市', '八幡平市', '奥州市', '滝沢市', '雫石町', '葛巻町', '岩手町', '紫波町', '矢巾町', '西和賀町',
'金ケ崎町', '平泉町', '住田町', '大槌町', '山田町', '岩泉町', '田野畑村', '普代村', '軽米町', '野田村',
'九戸村', '洋野町', '一戸町'
];
}
/**
* 宮城県の区市町村を取得する
*
* @return array
*/
private function getMiyagi(): array
{
return [
'仙台市', '石巻市', '塩竈市', '気仙沼市', '白石市', '名取市', '角田市', '多賀城市', '岩沼市', '登米市',
'栗原市', '東松島市', '大崎市', '富谷市', '蔵王町', '七ヶ宿町', '大河原町', '村田町', '柴田町', '川崎町',
'丸森町', '亘理町', '山元町', '松島町', '七ヶ浜町', '利府町', '大和町', '大郷町', '大衡村', '色麻町',
'加美町', '涌谷町', '美里町', '女川町', '南三陸町'
];
}
/**
* 秋田県の区市町村を取得する
*
* @return array
*/
private function getAkita(): array
{
return [
'秋田市', '能代市', '横手市', '大館市', '男鹿市', '湯沢市', '鹿角市', '由利本荘市', '潟上市', '大仙市',
'北秋田市', 'にかほ市', '仙北市', '小坂町', '上小阿仁村', '藤里町', '三種町', '八峰町', '五城目町',
'八郎潟町', '井川町', '大潟村', '美郷町', '羽後町', '東成瀬村'
];
}
/**
* 山形県の区市町村を取得する
*
* @return array
*/
private function getYamagata(): array
{
return [
'朝日町', '飯豊町', '大石田町', '大江町', '大蔵村', '小国町', '尾花沢市',
'金山町', '上山市', '河北町', '川西町',
'寒河江市', '酒田市', '鮭川村', '庄内町', '白鷹町', '新庄市',
'高畠町', '鶴岡市', '天童市', '戸沢村',
'長井市', '中山町', '南陽市', '西川町',
'東根市', '舟形町',
'真室川町', '三川町', '村山市', '最上町',
'山形市', '山辺町', '遊佐町', '米沢市'
];
}
/**
* 福島県の区市町村を取得する
*
* @return array
*/
private function getFukushima(): array
{
return [
'会津坂下町', '会津美里町', '会津若松市', '浅川町', '飯舘村', '石川町', '泉崎村', '猪苗代町',
'いわき市', '大熊町', '大玉村', '小野町',
'鏡石町', '葛尾村', '金山町', '川内村', '川俣町', '喜多方市', '北塩原村', '国見町', '桑折町',
'郡山市',
'鮫川村', '下郷町', '昭和村', '白河市', '新地町', '須賀川市', '相馬市',
'只見町', '伊達市', '棚倉町', '玉川村', '田村市', '天栄村', '富岡町',
'中島村', '浪江町', '楢葉町', '西会津町', '西郷村', '二本松市',
'塙町', '磐梯町', '檜枝岐村', '平田村', '広野町', '福島市', '双葉町', '古殿町',
'三島町', '南会津町', '南相馬市', '三春町', '本宮市',
'柳津町', '矢吹町', '矢祭町', '湯川村'
];
}
/**
* 北海道の市町村を取得する
*
* @return array
*/
private function getHokkaido(): array
{
return [
'旭川市', '留萌市', '稚内市', '士別市', '名寄市', '富良野市', '鷹栖町', '東神楽町', '当麻町', '比布町',
'愛別町', '上川町', '東川町', '美瑛町', '上富良野町', '中富良野町', '南富良野町', '占冠村', '和寒町',
'剣淵町', '下川町', '美深町', '音威子府村', '中川町', '幌加内町', '増毛町', '小平町', '苫前町', '羽幌町',
'初山別村', '遠別町', '天塩町', '猿払村', '浜頓別町', '中頓別町', '枝幸町', '豊富町', '礼文町', '利尻町',
'利尻富士町', '幌延町', '函館市', '北斗市', '松前町', '福島町', '知内町', '木古内町', '七飯町', '鹿部町',
'森町', '八雲町', '長万部町', '江差町', '上ノ国町', '厚沢部町', '乙部町', '奥尻町', '今金町', 'せたな町',
'釧路市', '帯広市', '北見市', '網走市', '紋別市', '根室市', '美幌町', '津別町', '斜里町', '清里町',
'小清水町', '訓子府町', '置戸町', '佐呂間町', '遠軽町', '湧別町', '滝上町', '興部町', '西興部村',
'雄武町', '大空町', '音更町', '士幌町', '上士幌町', '鹿追町', '新得町', '清水町', '芽室町', '中札内村',
'更別村', '大樹町', '広尾町', '幕別町', '池田町', '豊頃町', '本別町', '足寄町', '陸別町', '浦幌町',
'釧路町', '厚岸町', '浜中町', '標茶町', '弟子屈町', '鶴居村', '白糠町', '別海町', '中標津町', '標津町',
'羅臼町', '札幌市', '札幌市中央区', '札幌市北区', '札幌市東区', '札幌市白石区', '札幌市豊平区', '札幌市南区',
'札幌市西区', '札幌市厚別区', '札幌市手稲区', '札幌市清田区', '小樽市', '室蘭市', '夕張市', '岩見沢市',
'苫小牧市', '美唄市', '芦別市', '江別市', '赤平市', '三笠市', '千歳市', '滝川市', '砂川市', '歌志内市',
'深川市', '登別市', '恵庭市', '伊達市', '北広島市', '石狩市', '当別町', '新篠津村', '島牧村', '寿都町',
'黒松内町', '蘭越町', 'ニセコ町', '真狩村', '留寿都村', '喜茂別町', '京極町', '倶知安町', '共和町',
'岩内町', '泊村', '神恵内村', '積丹町', '古平町', '仁木町', '余市町', '赤井川村', '南幌町', '奈井江町',
'上砂川町', '由仁町', '長沼町', '栗山町', '月形町', '浦臼町', '新十津川町', '妹背牛町', '秩父別町',
'雨竜町', '北竜町', '沼田町', '豊浦町', '壮瞥町', '白老町', '厚真町', '洞爺湖町', '安平町', 'むかわ町',
'日高町', '平取町', '新冠町', '浦河町', '様似町', 'えりも町', '新ひだか町'
];
}
}
いざ、コマンド実行!
php artisan db:seed --class=PrefecturesSeeder
php artisan db:seed --class=MunicipalSeeder
無事、1700件近くのデータが挿入されました。
最後に
市町村は都度合併することもあるから定期的にみ