This library provides Json::decode()
and Json::encode()
implementations throwing \JsonException
on errors.
To use this library:
- install the library by using composer:
composer require pnz/json-exception
- replace the usage of
json_decode()
withJson::decode()
- replace the usage of
json_encode()
withJson::encode()
- catch the
\JsonException
eventually thrown by the functions
Example: Old code
$data = json_decode($jsonString, ...);
if (ERROR_NONE !== json_last_error()) {
// handle the error: thown a custom exception, or return
// $error = json_last_error_msg();
// $errorCode = json_last_error();
}
new code:
try {
$data = Json::decode($jsonString, ...);
} catch(\JsonException $e) {
// Handle the exception
}
To run the PHP coding-styles checks (php-cs-fixer
and phpstan
) run the make phpcs
command to:
- download the
php-cs-fixer
tool intools/
(if not present) - download the
phpstan
tool intools/
(if not present) - Run
php-cs-fixer
on the source code - Run
phpstan
on the source code
To run the tests, use make tests
to
- download
phpunit
tool intools/
if not present - run
phpunit
tests