Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 构造API的正确方法_Php_Json_Web Services_Api_Web - Fatal编程技术网

Php 构造API的正确方法

Php 构造API的正确方法,php,json,web-services,api,web,Php,Json,Web Services,Api,Web,我有一个小API,可以根据请求提供带有一些JSON的移动应用程序。这是我第一次开发出这样的东西,但它运行良好 我现在想验证和改进API的结构,因为我在没有太多经验的情况下拼凑了它。我目前的执行情况如下: 在我的公共web目录中,我有一个名为“API”的文件夹 在这个文件夹中,我有两个子目录“LiveScores”和“YesterDaysCores” 每个文件夹都有一个index.php文件。该文件查询我的数据库并将结果作为JSON返回 我的应用程序访问所需数据的特定路径(例如www.blabl

我有一个小API,可以根据请求提供带有一些JSON的移动应用程序。这是我第一次开发出这样的东西,但它运行良好

我现在想验证和改进API的结构,因为我在没有太多经验的情况下拼凑了它。我目前的执行情况如下:

  • 在我的公共web目录中,我有一个名为“API”的文件夹
  • 在这个文件夹中,我有两个子目录“LiveScores”和“YesterDaysCores”
  • 每个文件夹都有一个index.php文件。该文件查询我的数据库并将结果作为JSON返回
  • 我的应用程序访问所需数据的特定路径(例如www.blabla.com/api/LiveScores)
我的第一个问题是有很多冗余。例如,这两个index.php文件几乎相同,只是使用了不同的SQLWHERE子句。这似乎不太理想


除此之外,我只想反馈“正确”的方式来做这一切。

你可能想考虑使用API框架。PHP的几个流行版本(似乎正在积极维护/改进)包括:

  • (适用于Zend框架2)

您还可以研究使用MongoDB(),并直接在其上构建API层。如果您想使用web框架,有很多选择。有大量本机驱动程序供您选择()

无论如何,由于可以存储和运行来自MongoDB的JSON文档上的复杂查询,因此应该能够快速、轻松地构建和管理特定的API。它也是一个NoSQL数据库,在扩展方面比您现在使用的RDBMs要好得多;有了大量的移动设备,您将需要一种方法来扩展到具有低延迟的高并发请求

但是,您需要花时间学习文档建模方法和MongoDB。有一些免费的在线培训班来学习基础知识