定制 zalanihir/country-state-city 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

zalanihir/country-state-city

最新稳定版本:v1.1.0

Composer 安装命令:

composer require zalanihir/country-state-city

包简介

Laravel package for country, state, city providers with the flags

README 文档

README

Packagist Version

Lightweight Laravel package to seed Countries, States and Cities with model relationships and optional country flags.

Seeder preview

What you'll get:

  • Seeders and migrations for Country, State and City models
  • Pre-defined model relationships (Country -> State -> City)
  • Optional ISO codes (iso2, iso3), numeric code, phone code and country flags

Why use it?

  • Open source and free
  • Easy to install and modify
  • Works out of the box with Laravel

Requirements

  • PHP 8.1+ (or the version required by your Laravel application)
  • Laravel 9 / 10 / 11

Quick installation

Install via Composer:

composer require zalanihir/country-state-city

Register the service provider (only if your Laravel version requires manual registration):

  • Laravel 9 / 10: add this to config/app.php providers array:
\Nihir\CountryStateCity\CountryStateCityServiceProvider::class,
  • Laravel 11: add this to bootstrap/app/providers.php (if applicable):
\Nihir\CountryStateCity\CountryStateCityServiceProvider::class,

Publish package files and flags:

php artisan vendor:publish --provider="Nihir\CountryStateCity\CountryStateCityServiceProvider"
php artisan csc:publish-flags

Run migrations and seeders:

php artisan migrate

Add the seeder call to DatabaseSeeder.php:

$this->call(CountryStateCityTableSeeder::class);

Then run:

php artisan db:seed

Notes

  • If you already have Country/State/City models or migrations in your project, remove or rename them to avoid conflicts before running the package migrations.
  • The package fetches flags from https://flagsapi.com/ (64px). If some flags are missing you can contribute missing images in the flags/ folder.

Usage example (display flags):

use App\Models\Country;

$countries = Country::all();

foreach ($countries as $country) {
    echo '<img src="'.asset('flags/'.$country->iso2.'.png').'" alt="'.$country->name.'" />';
}

Support

If you find issues or need help, email: testnihir@gmail.com

Connect with me

Twitter LinkedIn Instagram

Contributors

Thanks to everyone who contributed!

Nihir Zala
Zala Nihir

Want to contribute? See CONTRIBUTING.md.

统计信息

  • 总下载量: 5.38k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 25
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 25
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-02-04