对于一个特定的客户端,我必须使用PHP。 This和this问题是2岁。我想知道2010年是否有任何意见更新?
我对Web开发的背景主要是rails。我可以用PHP编写代码(例如,为Drupal编写一个模块)但从未在任何项目中使用任何PHP框架。
我可以在项目中看到以下潜在功能:
authlogic
- 与用户访问控制类似will_paginate
- 类似于长列表的分页paperclip
- 就像简单文件上传一样prawn
- 与PDF生成一样和我个人最喜欢的ruby / rails功能:
<% @list.each do |item| %>
synstax而不是for ($i=1; $i<=$row_num; $i++)
... rake:db migrate
script/console
谢谢!
答案 0 :(得分:7)
请为了所有善良和圣洁的缘故,请不要用PHP编写Rails! Ruby习语和Rails习语根本不能很好地转换为PHP。地狱,直到5.3,由于PHP的局限性,你甚至不能在没有疯狂的hackish变通办法的情况下做ActiveRecord。
尝试使用像Kohana这样的现代框架,或者像Zend Framework这样的更具工程性的OO。 CakePHP试图像Rails一样,但是在PHP4的过去被卡住了。避免它!
答案 1 :(得分:4)
正如Charles所说,不要试图用PHP复制你在Ruby中可以做的事情。
话虽如此,有几个很好的PHP框架。这里已经有几个了 我只想将Symfony添加到列表中。
它的灵感来自Django在很多方面。但你也会看到几个类似的想法也来自rails。
答案 2 :(得分:3)
我还没有找到一个接近Rails的PHP框架。
当我不得不使用PHP进行开发时,我在几个项目中使用了CodeIgniter,但我的方法是拥有一个最小的框架并完成大部分繁重的工作。
我非常广泛地使用了CakePHP,因为它认为它可能是Rails,所以它很快就崩溃了 - Ruby可以很容易地在PHP中做一些不可能或困难的事情。
我的建议是确保您为PHP工作收取额外费用 - 通常我需要花费25-50%的时间来完成PHP项目。
答案 3 :(得分:1)
我对PHP框架并不熟悉,但让我帮你解决一下这个问题:
PHP的Ruby / Rails功能:
<% @list.each do |item| %>
PHP中的与:
相同<?php foreach($list as $item): ?>
...(HTML)...
<?php endforeach; ?>
对于脚本/控制台,您可以使用PHPSH(由Facebook开发),位于:
希望这有帮助! 马特