json_validate() 方法
PHP 8.3 提供了 json_validate() 方法, 可以用来验证是否有语法错误:
1 | $fruitsArray = [ |
PHP 8.3 之前的版本,可以使用 symfony/polyfill-php83 包提供的 json_validate() 方法:
1 | composer require symfony/polyfill-php83 |
但是 json_validate() 方法只能验证是否有 JSON 语法错误,要进一步验证 JSON 数据类型等,可以使用 JSON schema:
swaggest/json-schema
安装包
1 | composer require swaggest/json-schema |
定义 Scheme
1 | $schemaJson = <<<'JSON' |
验证
1 | require 'vendor/autoload.php'; |
参考:https://dev.to/robertobutti/validating-json-with-json-schema-and-php-2b4i