2010-06-15 71 views
5

對於一個特定的客戶端,我必須使用PHP。 Thisthis問題是2歲。我想知道2010年有沒有更新的意見?RoR開發者的哪個PHP框架?

我的web開發背景主要是rails。我可以在PHP中編寫代碼(例如,爲Drupal編寫模塊),但從未使用過任何PHP框架的任何項目。

我可以看到下面的潛在功能,需要在我的項目:

  • authlogic樣的用戶訪問控制
  • will_paginate般的傳呼長期房源
  • paperclip樣簡單的文件上傳
  • prawn-like PDF一代
  • 寧靜的網址

和我個人最喜歡的Ruby/Rails功能:

  • ActiveRecord的
  • <% @list.each do |item| %> synstax代替for ($i=1; $i<=$row_num; $i++) ...
  • rake:db migrate
  • script/console

謝謝!

回答

7

請爲了所有的好和聖潔,不要在PHP中編寫Rails! Ruby成語和Rails成語根本不能很好地轉化爲PHP。直到5.3,由於PHP的侷限性,你甚至無法做到ActiveRecord沒有瘋狂的駭客工作。

嘗試像Kohana這樣的現代框架,或者更像工程設計的東西 - 例如Zend Framework。 CakePHP試圖成爲類似Rails的,但被困在PHP4的過去。躲開它!

+0

Kohana的+1 - 我從來沒有使用它,但我聽說它和PHP可能可以滿足Rails開發人員一樣接近。 – Jeriko 2010-06-15 07:43:39

1

我不是很熟悉PHP框架,但讓我幫你出過渡只是有點:

的Ruby/Rails功能,以PHP:

<% @list.each do |item| %> 

是在同一PHP爲:

<?php foreach($list as $item): ?> 
...(HTML)... 
<?php endforeach; ?> 

而對於腳本/控制檯,您可以使用PHPSH(Facebook開發),位於:

http://www.phpsh.org/

希望這會有所幫助! 馬特

3

我還沒有找到一個接近Rails的PHP框架。

當我不得不使用PHP進行開發時,我已經在幾個項目上使用了CodeIgniter,但我的方法是擁有一個最低限度的框架,並且完成大部分繁重的工作。

我使用的CakePHP相當廣泛,它崩潰得非常快,因爲它認爲它可能是Rails - Ruby可以做一些在PHP中不可能或很難實現的事情。

我的建議是確保您爲PHP工作收取額外費用 - 通常需要我花費25-50%的時間來完成PHP項目。

+0

Ci是要走的路! IMO – ggfan 2010-06-18 04:14:00

4

正如Charles所說的,不要試圖將您在Ruby中可以做的事情複製到PHP中。

這就是說,有幾個很好的PHP框架。這裏已經給出了幾個。
我只是想將Symfony添加到列表中。

Django的靈感來自於許多方面。但是你也會看到幾個類似的想法。