Download the PHP package safran-cassiopee/php-taf-decoder without Composer
On this page you can find all versions of the php package safran-cassiopee/php-taf-decoder. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download safran-cassiopee/php-taf-decoder
More information about safran-cassiopee/php-taf-decoder
Files in safran-cassiopee/php-taf-decoder
Package php-taf-decoder
Short Description TAF weather forecast decoder
License GPL-3.0+
Informations about the package php-taf-decoder
PHP TAF decoder
A PHP library to decode TAF (Terminal Aerodrome Forecast) strings, fully unit tested (100% code coverage)
Try it on the demo website
They use php-taf-decoder in production:
- Safran Cassiopée (private)
- Your service here ? Submit a pull request or open an issue !
Introduction
This piece of software is a library package that provides a parser to decode raw TAF messages.
TAF is a format made for weather information forecast. It is predominantly used by in aviation, during flight preparation. Raw TAF format is highly standardized through the International Civil Aviation Organization (ICAO).
Requirements
This library package only requires PHP >= 5.3
It is currently tested automatically for PHP 5.3, 5.4 and 5.5.
If you want to integrate it easily in your project, you should consider installing composer on your system. It is not mandatory though.
Setup
- With composer (recommended)
Add the following line to the composer.json
of your project
Launch install from your project root with:
Load the library thanks to composer autoloading:
- By hand
Download the latest release from github
Extract it wherever you want in your project. The library itself is in the src/ directory, the other directories are not mandatory for the library to work.
Load the library with the static import file:
Usage
Instantiate the decoder and launch it on a TAF string. The returned object is a DecodedTaf object from which you can retrieve all the weather properties that have been decoded.
All values who have a unit are based on the Value
object which provides the methods getValue()
and getUnit()
TODO: full documentation of the structure of the DecodedTaf object
TODO: Provide a PHP example
Contribute
If you find a valid TAF that is badly parsed by this library, please open a github issue with all possible details:
- the full TAF causing problem
- the parsing exception returned by the library
- how you expected the decoder to behave
- anything to support your proposal (links to official websites appreciated)
If you want to improve or enrich the test suite, fork the repository and submit your changes with a pull request.
If you have any other idea to improve the library, please use github issues or directly pull requests depending on what you're more comfortable with.
Tests and coverage
This library is fully unit tested, and uses PHPUnit to launch the tests.
Travis CI is used for continuous integration, which triggers tests for PHP 5.3, 5.4, 5.5 for each push to the repo.
To run the tests by yourself, you must first install the dev dependencies (composer needed)
Launch the test suite with the following command:
You can also generate an html coverage report by adding the --coverage-html
option:
./vendor/bin/phpunit --coverage-html ./report tests
``