提供货币转换功能的基于PHP REST的web服务


PHP REST based web service providing currency conversion functions

我正在尝试构建一个提供货币转换功能的基于REST的web服务。

请注意,我是OO PHP的初学者,所以这对我来说是全新的,相当令人困惑。

我希望服务接收URL的编码为:

http://www.mysite.com/conv/?amnt=7.15&从= GBP&美元=

,我希望它在浏览器中以XML消息的形式返回结果。错误处理显然也需要考虑。

我已经阅读了大量的在线教程,并理解我将使用GET来实现我想要实现的目标。最让我困惑的是如何构建我的PHP文件(OO格式)以及如何在默认索引页面上实际输出这些结果。

为什么这里需要OOP ?

只有当它是一个自我教育项目。我认为你应该使用MVC模式,这里有很多文档,简单地(在这里)将该模型转换为面向对象的php类,然后以这样的方式放入:

  • lib/
    • core/ -核心类,如控制器、请求、响应等
    • hepler/ -分配hepler的函数文件的位置
  • config/ - DB连接的配置,以及其他
  • 模型/ -你的OOP模型
  • view/ - html模板
  • web/ - DOCUMENT_ROOT,其中css, js, image和您的控制器接入点在分配
  • log/ -日志目录,如果你需要一个
  • cache/不过,如果你需要的话。

文件,为了方便探索,应该命名为*.class.php,如果有任何继承,它将是*.base.class.php或*.module.class.php

基本规则是:

  • 每个文件一个类
  • 如果您正在使用名称空间(推荐),那么您应该以与名称空间相同的方式分配文件,以便于自动加载(spl_register_autolload ())
  • 每个功能的独立库

在你的索引文件中只有3-4行,在那里你构建你的项目根类(控制器),然后在你的控制器内你处理请求,然后去模块,你请求,然后到视图,你的系统输出结果。

OOP在MVC框架(如Symfony)中有很大的覆盖,你应该去那里看看

作为Restler(一个基于PHP的RESTful API服务器)框架的作者,我想建议您尝试Restler。它采用了一种不同的、更简单的方法,完全符合您的要求。它将类的公共方法作为API公开。

BMI示例和其他实时示例应该让您立即开始