使用PHP进行JSON模式验证

时间:2010-05-03 11:24:36

标签: php json validation jsonschema

是否有任何PHP库根据JSON模式验证JSON对象?

5 个答案:

答案 0 :(得分:9)

看看http://json-schema.org/implementations.html。它有一些PHP和其他语言的验证器。

答案 1 :(得分:9)

我正在使用Justin Rainbow的JSON Schema for PHP https://github.com/justinrainbow/json-schema,我很高兴。

这是http://jsonschemaphpv.sourceforge.net/

的分支

您可以通过Composer轻松安装。

答案 2 :(得分:5)

关于jsonschemaphpv,虽然它维护得不是很好,但我们经常使用它并且它有效。它是js验证器的一个端口。它有一个完整的测试套件,可以运行php和http://code.google.com/p/jsonschema/

猜猜是什么......它传递的测试多于js。至少在最后一次我运行测试。问题是项目结构不是很好,看起来很难看。但我确保你很稳定。它还允许您将关联数组验证为对象。

我先在selenium中写过测试。之后我用phpunit写了它们。我不确定phpunit测试是否存在。

如果你尝试一下并且真的想要使用它,我可以在github上使用phpunit测试启动它的分支。

Bruno Reis(将js移植到php的人)

答案 3 :(得分:2)

您可以验证不是JSON,而是可以从许多来源(JSON,XML,Post Data)获取的PHP数组。要检查您的数组是否与模式匹配,您可以查看https://github.com/ptrofimov/matchmaker

答案 4 :(得分:2)

JSON Schema website上有一个list of the implementions,其中包括PHP中的验证器:

  

jsv4-php - 支持第4版(公共领域/ MIT)

     

php-json-schema(麻省理工学院)

     

json-schema(伯克利)

     

jvalidator(BSD3)