mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00

* Add `json_validate(string $json, int $depth = 512, int $flags = 0): bool` from https://wiki.php.net/rfc/json_validate * In json_validate, use a different set of C no-op functions for creating/updating arrays/objects when validating while reusing the unmodified parser/scanner code * Forbid unsupported flags in json_validate() * Remove test of passing NULL as parameter (normal behavior of https://wiki.php.net/rfc/deprecate_null_to_scalar_internal_arg for internal functions) Co-authored-by: jcm <juan.carlos.morales@tradebyte.com>
41 lines
963 B
PHP
41 lines
963 B
PHP
--TEST--
|
|
json_validate() - General usage
|
|
--FILE--
|
|
<?php
|
|
|
|
var_dump(
|
|
json_validate(""),
|
|
json_validate("."),
|
|
json_validate("<?>"),
|
|
json_validate(";"),
|
|
json_validate("руссиш"),
|
|
json_validate("blah"),
|
|
json_validate('{ "": "": "" } }'),
|
|
json_validate('{ "": { "": "" }'),
|
|
json_validate('{ "test": {} "foo": "bar" }, "test2": {"foo" : "bar" }, "test2": {"foo" : "bar" } }'),
|
|
|
|
json_validate('{ "test": { "foo": "bar" } }'),
|
|
json_validate('{ "test": { "foo": "" } }'),
|
|
json_validate('{ "": { "foo": "" } }'),
|
|
json_validate('{ "": { "": "" } }'),
|
|
json_validate('{ "test": {"foo": "bar"}, "test2": {"foo" : "bar" }, "test2": {"foo" : "bar" } }'),
|
|
json_validate('{ "test": {"foo": "bar"}, "test2": {"foo" : "bar" }, "test3": {"foo" : "bar" } }'),
|
|
);
|
|
|
|
?>
|
|
--EXPECT--
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(false)
|
|
bool(true)
|
|
bool(true)
|
|
bool(true)
|
|
bool(true)
|
|
bool(true)
|
|
bool(true)
|