Stars: 104
Forks: 22
Pull Requests: 0
Issues: 6
Watchers: 5
Last Updated: 2023-05-23 09:08:17
ThinkPHP5/6省市区(县)街道四级联动扩展
License: Apache License 2.0
Languages: PHP, HTML
支持
TP5.0.*
和TP5.1.*
还有TP6.0
,搜索功能支持汉字,支持拼音,首字母搜索。
Composer 运行扩展安装命令
# TP数据库迁移工具
composer require topthink/think-migration
# 本扩展
composer require yupoxiong/region
复制vendor/yupoxiong/region/database/migrations
目录下的数据库迁移文件到TP迁移目录(一般是 /database/migrations/
),然后运行TP自带迁移命令创建表。
TP5.1 版本可以直接运行以下两个命令完成安装
php think region:publish
php think region:migrate
TP6.0 版本可以直接运行以下命令完成安装
php think region:migrate
TP5.0 在 /application/route.php
中追加,TP5.1 在 /route/route.php
中追加。
Route::alias('region','\yupoxiong\region\RegionController');
TP6.0版本已经去掉别名路由,可以在路由配置里添加以下路由(多应用模式在应用路由里添加):
Route::group('region',function (){
Route::any('getRegion','\yupoxiong\region\RegionController@getRegion');
Route::any('getProvince','\yupoxiong\region\RegionController@getProvince');
Route::any('getCity','\yupoxiong\region\RegionController@getCity');
Route::any('getDistrict','\yupoxiong\region\RegionController@getDistrict');
Route::any('getStreet','\yupoxiong\region\RegionController@getStreet');
Route::any('searchRegion','\yupoxiong\region\RegionController@searchRegion');
Route::any('searchProvince','\yupoxiong\region\RegionController@searchProvince');
Route::any('searchCity','\yupoxiong\region\RegionController@searchCity');
Route::any('searchDistrict','\yupoxiong\region\RegionController@searchDistrict');
Route::any('searchStreet','\yupoxiong\region\RegionController@searchStreet');
});
/region/getRegion
/region/getProvince
/region/getCity
/region/getDistrict
/region/getStreet
/region/searchRegion
/region/searchProvince
/region/searchCity
/region/searchDistrict
/region/searchStreet
可在配置文件中添加以下配置,5.0.* 在 /application/config.php
中追加。
//获取省市区街道缓存、查询字段配置
'region' => [
//查询缓存秒数,false为不缓存
'cache' => 20140210,
//查询字段,可选项:id,name,parent_id,initial,pinyin,citycode,adcode,lng_lat
'field' => 'id,name',
//排序,默认为adcode正序
'order' => 'adcode asc',
]
5.1.* 和 6.0 直接运行以下命令即可在 config 目录下生成
region.php
配置文件。
php think region:publish
TP5.1 和 TP6.0 可以在开发中直接使用以下代码获取数据:
\yupoxiong\region\facade\Region::getProvince();
//更多可参考该类
安装配置好之后可以将vendor/yupoxiong/region/tests/region.html
放到项目public
目录下访问测试扩展是否可用