upgradelabs/swiss-zip-code-resolver

A resolver for Swiss zip codes (PLZ).

Installs: 1

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/upgradelabs/swiss-zip-code-resolver

1.0 2025-12-16 19:58 UTC

This package is auto-updated.

Last update: 2025-12-16 20:02:25 UTC


README

⚠️ This project is a fork of onlime/swiss-zip-code-resolver

Onlime's Swiss Zip Code Resolver

Copyright (c) Onlime GmbH, https://www.onlime.ch

A simple zip code lookup library to get information like city, commune, canton, and coordinates (LV03) for a Swiss zip code (PLZ).

Installation

PHP versions 5.6 up to PHP 7.1 are currently supported.

The zip extension is required. PHP should be compiled with zip support by using the --enable-zip configure option.

It is recommended to use Composer to install the library.

$ composer require upgradelabs/swiss-zip-code-resolver

You can also use any other PSR-4 compliant autoloader.

Usage

  • Create Resolver object
$Resolver = new Upgradelabs\SwissZipCodeResolver\Resolver();
  • Call lookup() method
$Result = $Resolver->lookup($zipcode);
  • Sample of a Result object:
Upgradelabs\SwissZipCodeResolver\Result Object
(
    [zipcode] => 8046
    [city] => Zürich
    [extraDigit] => 0
    [commune] => Zürich
    [bfsNr] => 261
    [canton] => ZH
    [east] => 680711
    [north] => 252925
    [validZipCode] => 1
)
  • You may choose from 5 different return types. The types are array, object, json, serialize and xml. By default it is object. If you want to change that call the format method before calling the parse method or provide the format to the constructor. If you are not using object and an error occurs, then exceptions will not be trapped within the response and thrown directly.
$Resolver->setFormat('json');
$Resolver = new Upgradelabs\SwissZipCodeResolver\Resolver('json');
  • The Resolver supports the fluent interface on its setters, e.g.:
$Resolver = new Upgradelabs\SwissZipCodeResolver\Resolver();
$Resolver
    ->setCachePath('/tmp')
    ->setCacheTime(86400)
    ->setFormat('json');
$json = $Resolver->lookup(8046);

Credits

The data is provided and updated by GEO.ADMIN.CH:

Issues

Please report any issues via https://github.com/Upgradelabs/SwissZipCodeResolver/issues

LICENSE and COPYRIGHT

Copyright (c) 2007 - 2016 Onlime Webhosting (https://www.onlime.ch)

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.