哪些PHP框架适用于仅限Web服务的应用程序?

10

我正在评估PHP框架,准备用于多个即将开始的项目,并希望在所有项目中使用相同的框架。一个不寻常的方面是,它们不是标准的基于浏览器的应用程序,它们将由预期接受XML或JSON(目前尚未决定)的自定义应用程序来访问。

大多数PHP框架,如Yii、CodeIgniter、CakePHP等,似乎都是围绕着合理的假设设计的,即客户端应用程序将是浏览器 -- 例如,使用cookie来管理持久性,在POST之后重定向等。

虽然我确信可以让上述任何框架完成工作,但是否有任何主流框架更适合客户机应用程序不可知的应用程序开发?

6个回答

6

实际上,Recess PHP 对此非常完美... 它本质上是 restful 的。

更新:最近我也一直在使用 Slim Framework。这是一个相当酷的小工具,基本上就是 node 的 Express.js 的 PHP 版本。它非常高效、轻量级,并且测试驱动。


6
在“大型”框架(CI,Kohana,Zend,Cake,Symfony)中,我认为较新的Zend对RESTful Web服务有最好的支持,但早期版本的Zend框架缺乏rest控制器。我已经为Zend创建了自己的控制器并使用它们。
如果你真的想要一个定制的Web服务框架,那么还有一堆小项目,但我认为它们都没有达到足够的关注度,让我把赌注下在它们身上(或者用于更多的演示项目)。
我的建议是坚持已经熟悉的框架,构建自己的rest控制器(如果当前缺少)。可能需要创建一些基本函数来将输出转换为XML、JSON等等…,但相比学习新框架,你会花费更少的时间。此外,使用大型框架,您不必担心维护某个人已经厌倦了跟进的废弃代码库。

1

Symfony2拥有一个有趣的概念,只要您关注HTTP(此外,它还具有一些CLI(命令行接口))。

它不是一个框架,而是一个框架库,在其中您可以选择需要的部分,并提供基本的HTTP抽象的小内核。这种轻量级的概念足以涵盖您的应用逻辑中的许多内容,而不会过于复杂。

此外,它经过充分测试,具有定义良好的API,并且允许使用依赖注入和所谓的bundle进行轻松扩展。

如果您想开始使用PHP,则从Symfony2开始。


0

创建简单的Web服务非常容易。您不需要使用任何框架,但是如果您要投入生产......您需要担心安全性和灵活性

实际上,如果您使用框架来管理您的API,那么这将非常容易。我建议您选择一个轻量级框架。

框架的整个重点是处理常见任务和繁琐的事情。REST API通常使用PHP构建,因此存在大量框架。就个人而言,我会使用像Slim这样的轻量级框架,只需处理URI路由、解析/清理请求数据和生成响应即可

您有很多这样的选择: http://davss.com/tech/php-rest-api-frameworks/


0
我推荐使用Zend Framework来处理这类小型工作,因为它的编写方式使得你可以只使用其中的部分功能而不需要整个框架的行为。例如,在我的应用程序中,我使用Zend_Db框架来处理ORM和数据库相关的功能,但对于其他部分,我会使用其他对象和框架。
正如你所指出的,大多数其他框架都是根据你希望构建的应用程序类型进行假设的(这是约定优于配置范例的缺点之一)。

0

到2012年,人们肯定已经停止使用RESTful服务了吧?

如果您熟悉Ruby on Rails Yii PHP框架,那么值得一试。

也许值得花一个小时去尝试每个框架,看看哪个最容易使用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接