【问题标题】:JSON schema validation with PHP [closed]使用 PHP 进行 JSON 模式验证 [关闭]
【发布时间】:2011-02-15 00:08:04
【问题描述】:

是否有任何 PHP 库可以根据 JSON Schema 验证 JSON 对象?

【问题讨论】:

  • 这里列出了各种语言(以及每种语言的不同库)的实现:json-schema.org

标签: php json validation jsonschema


【解决方案1】:

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

这是http://jsonschemaphpv.sourceforge.net/的一个分支

您可以通过 Composer 轻松安装它。

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      你猜怎么着...它比 js 通过了更多的测试。至少在我最后一次运行测试时。问题是该项目的结构不是很好,而且看起来很丑。但我向你保证它非常稳定。它还允许您将关联数组验证为对象。

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

      如果你试一试并且真的想使用它,我可以在 github 上使用 phpunit 测试为它创建一个分支。

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

      【讨论】:

      【解决方案4】:

      JSON Schema website 上有一个list of the implementions,其中包括 PHP 中/用于验证器的其他内容:

      jsv4-php - 支持第 4 版(公共领域/麻省理工学院)

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

      json-schema(伯克利)

      jvalidator (BSD3)

      【讨论】:

        【解决方案5】:

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

        【讨论】:

          猜你喜欢
          • 2011-01-30
          • 2020-09-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-06-07
          • 1970-01-01
          相关资源
          最近更新 更多