承接 macromindonline/zipcode 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

macromindonline/zipcode

Composer 安装命令:

composer require macromindonline/zipcode

包简介

ZipCode From Brazil

README 文档

README

Web Service provided by http://viacep.com.br/

Canducci ZipCode

Build Status Packagist Packagist Packagist

Demo

Demo Canducci ZipCode

Quick start

Required setup

In the require key of composer.json file add the following

"canducci/zipcode": "1.*"

Run the Composer update comand

$ composer update

In your config/app.php add 'Canducci\ZipCode\Providers\ZipCodeServiceProvider' and 'Canducci\ZipCode\Providers\ZipCodeAddressServiceProvider' to the end of the providers array:

'providers' => array(
    ...,
    Canducci\ZipCode\Providers\ZipCodeServiceProvider::class,
    Canducci\ZipCode\Providers\ZipCodeAddressServiceProvider::class,

),

At the end of config/app.php add 'ZipCode' => 'Canducci\ZipCode\Facade\ZipCode' and add 'Address' => 'Canducci\ZipCode\Facades\ZipCodeAddress' to the aliases array:

'aliases' => array(
    ...,
    'ZipCode'   => Canducci\ZipCode\Facades\ZipCode::class,
    'Address'   => Canducci\ZipCode\Facades\ZipCodeAddress::class,

),

##How to Use

To use is very simple, pass the ZIP and calls the various types of returns, like this:

Package ZipCode

##Facade

Add namespace:

use Canducci\ZipCode\Facades\ZipCode;

Code Example

$zipCodeInfo = ZipCode::find('01414-001');

##Helper

$zipCodeInfo = zipcode('01414000');

##Injection Add Namespace

use Canducci\ZipCode\Contracts\ZipCodeContract;

Code Example

public function index(ZipCodeContract $zipcode)
{

      $zipCodeInfo = $zipcode->find('01414000');
      

##Traits Add Namespace

use Canducci\ZipCode\ZipCodeTrait;

Code Example

class WelcomeController extends Controller {

	use ZipCodeTrait;
	
	public function index()
	{
      		$zipCodeInfo =	$this->zipcode('01414000');
      	
      		

Summary of How to Use

Code

$zipCodeInfo = ZipCode::find('01414000', false); //Facade

$zipCodeInfo = $zipcode->find('01414000', false); //Contracts

$zipCodeInfo = zipcode('01414000', false); // Helper

$zipCodeInfo = $this->zipcode('01414000', true); //Traist

Return

The return can be null or class instance ZipCodeInfo (Canducci\ZipCode\ZipCodeInfo)

Methods ZipCodeInfo:

  • Json => getJson()
if ($zipCodeInfo) 
{

    $zipCodeInfo->getJson();
    
    {
        "cep": "01414-001",
        "logradouro": "Rua Haddock Lobo",
        "bairro": "Cerqueira César",
        "localidade": "São Paulo",
        "uf": "SP",
        "ibge": "3550308", 
        "complemento": ""
		"gia": 1004
    }
    
}
  • Array => getArray()
if ($zipCodeInfo) 
{

    $zipCodeInfo->getArray();
    
    Array
    (
        [cep] => 01414-001
        [logradouro] => Rua Haddock Lobo
        [bairro] => Cerqueira César
        [localidade] => São Paulo
        [uf] => SP
        [ibge] => 3550308,
        [complemento] => 
		[gia] => 1004
    )
    
}
  • Object => getObject()
if ($zipCodeInfo) 
{

    $zipCodeInfo->getObject();
    
    stdClass Object
    (
        [cep] => 01414-001
        [logradouro] => Rua Haddock Lobo
        [bairro] => Cerqueira César
        [localidade] => São Paulo
        [uf] => SP
        [ibge] => 3550308
        [complemento] => 
		[gia] => 1004
    )
    
}

##Renew item from cache

$zipCodeInfo  = ZipCode::find('01414001', true);

if ($zipCodeInfo) 
{

    $zipCodeInfo->getObject();
   
    stdClass Object
    (
        [cep] => 01414-001
        [logradouro] => Rua Haddock Lobo
        [bairro] => Cerqueira César
        [localidade] => São Paulo
        [uf] => SP
        [ibge] => 3550308
        [complemento] => 
		[gia] => 1004
    )
}

Package Address

Obs: follows the same coding of ZipCode

###To add to the list of UF:

use Canducci\ZipCode\ZipCodeUf;
$lists = ZipCodeUf::lists();

###To search for all zip of a particular city , uf and address

public function get(Request $request)
{
    $uf = $request->get('uf');
    
    $city = $request->get('cidade');
    
    $address = $request->get('endereco')
    
    $zipcodeaddressinfo = zipcodeaddress($uf,$city,$address);

    if ($zipcodeaddressinfo)
    {

        return $zipcodeaddressinfo->getJson();

    }
    
    return Response::json(['error' => 1]);

}

macromindonline/zipcode 适用场景与选型建议

macromindonline/zipcode 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 13 次下载、GitHub Stars 达 0, 最近一次更新时间为 2017 年 11 月 13 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「zip」 「zipcode」 「cep」 「laravel5」 「cep from brazil」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 macromindonline/zipcode 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 macromindonline/zipcode 我们能提供哪些服务?
定制开发 / 二次开发

基于 macromindonline/zipcode 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 13
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 11
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-11-13