C uzantısı olarak yazılmış herhangi bir PHP Framework var mı?

6 Cevap php

Yes i Zend, Cake, Symfonie, Kohana ve CodeIgniter'ı biliyorum.

Ama hiç kimse size php çekirdek bileşenleri yazma ile almak ve bir uzantısı içine kadar çok şeyler faktör çalıştı büyük aşırı kurtulmak için çalıştı olup olmadığını bilmek istiyorum. Vb Precompiled yönlendirici sınıfları, önbelleğe (modüller memcache bir yapı var), işleri hızlandırmak olabilir.

Ben de bir uzantısı uygulamak için sınıflar (? Hala doğru?) Imkansız mevcut zayıflıkları biliyorum. Ama kim bu OO olmak zorunda diyor?

Senin fikrini duymak istiyorum ve belki de kod deneysel kanıtı (veya başarısızlık) bağlantılar olacaktır. Henüz hiçbir şey prime time olduğunu biliyorum, ama belki birileri geçmişte bu konuda düşündüm.

EDIT: And even if there is nothing like this may question is why? Is it just because the number of people who have the skills to write PHP extensions are so limited (i would say it's ugly but not really difficult)?

6 Cevap

Ben itiraf etmeliyim, bir C-uzantısı olarak inşa hayır PHP Framework biliyorum.

Ben görebiliyorum nedenleri şunlardır:

  • Harder to develop :
    • Toplumda daha az kişi biliyor C
    • Harder test etmek için, çok: Eğer alt-tab + F5 sadece yok: Eğer derlemek zorunda, apache yeniden
    • Bir PHP developper bir hata bulursa, o büyük olasılıkla bunu kendisi düzeltmek mümkün olmayacaktır (no "quick and dirty" way if you don't know C well)
  • If there is a bug you don't only get a warning/error : you get a segfault, which crashes an instance of apache, which is not good
    • sunucu için oldukça iyi değil
    • ve kullanıcı için ölümcül bir hata daha kötü ...
  • Less easy to install / update / deploy :
    • you must be admin of your server
      • demektir bu barındırma paylaşılan kullanılan olmayacak
    • genellikle uzantısı derlemek zorunda olacak demektir - değil birçok kişi nasıl biliyorum; özellikle pencerelerde


OK, it might be great for performances... But the difficulties are too great, I think, for it to be really worth it...

... Eğer performansları sonra çalıştırıyorsanız, APC gibi, opcode önbellek bir göz atın; O zaten biraz yardımcı olacaktır ;-)


Still, I've heard about some "mini-framework" or parts of an application stack that are developped as C-extensions :

  • blitz: Bir çiftleşmiş motoru (smarty gibi biraz, ama daha az şeyler yapar)
  • Bir Doctrine extension (ORM framework) orada olacak gibi görünüyor

Bir diğeri: http://phalconphp.com/

evet yaf PHP uzantısı olarak inşa edilen bir çerçeve var, bunu bulabilirsiniz http://pecl.php.net/package/Yaf

Ben biliyorum hiçbiri vardır. Ben hiç var neden çünkü php yapıyor vs birini yapmak olurdu ne kadar zor olduğunu tahmin için gidiyorum. Php, sen senaryoyu değiştirecek basın kaydetmek ve test edin. C / C + +, onu derlemeniz ve bunu test etmek gerekiyor. Söz değil bu bir seviye o düşük de PHP ile arayüzü çok zor bulunuyor.

I Doctrine veya C + + uzantısı olarak kendi kod parçası yeniden planlama olduğunu biliyoruz.

Belki Facebook bile PHP dev bir çalışan olmak çok hızlı nasıl ilgi olsun.

Madde: http://blog.facebook.com/blog.php?post=2356432130

% 84 Phalcon kod C yazılır

Giriş: https://www.ohloh.net/p/phalcon