Hacker News new | past | comments | ask | show | jobs | submit login

What's your favorite example of great, maintainable open source software written in clean PHP?

I'd like to look at a good example to give it another chance.




- Doctrine - ORM

- Symfony - framework

- Silex - micro framework based on symfony components

- Laravel - framework

- Slim - framework

- Swiftmailer - email/transport framework

- Guzzle - http web service client

- React - async i/o

- reactphp/promise - promises

- AuraPHP - framework components

- Ratchet - web sockets

- Assetic - Asset Management for PHP

- Piwik - Open Source Analytics

- Monolog - Logging

- Goutte - a simple PHP Web Scraper

many projects use modular components from these and others.

also check out some repos with a lot of stars https://github.com/search?l=PHP&q=stars%3A%3E1&s=stars&type=...

careful though, Wordpress is there also.


You forgot to mention the one that rules them all:

https://github.com/composer/composer


i half-intentionally left it out. not because it's poorly written, but because its design/architecture may be somewhat lacking.

http://www.borfast.com/blog/i-hate-php (see Composer section)

while i have not profiled it myself, i've certainly experienced how slow it can be with deep dependency graphs stemming from a few, common top level "require"s. i dont want its slowness to be equated to poor PHP perf in general or something equally unwarranted.


That article is just more of the usual bullshit used to bash PHP, maybe to make authors like himself feel better about not using it, and have a good laugh with other bitter peers. Haters gonna hate.

The author is comparing Composer to Bundler, which makes no sense because Composer does a lot more than Bundler. With Composer you can do things exactly the way you want. He says "I don't know what it does under the hood, if it clones every single repository of every required package independently of it being necessary", proving that he didn't even bother learning how to use the tool.

There is no way you can live with Bundler after having used Composer. Trust me, I was a Rails guy.


despite the tone, the author does make some valid points. im no php evangelist myself and find http://phpsadness.com/ quite objective


Well I only cared about Composer and all his points were wrong.

I'm not here to get into another PHP debate. Non-phpers can waste all their time hating if they want, and then go fight with all the problems they have with outdated components like Bundler, create hacks to simulate features that are native in PHP and other OOP languages (eg: interfaces in ruby, abstract classes in python), etc. I'll just get things done in a professional manner using what seems to be the best web platform of our time and then enjoy life.


Adding to leeoniya's list:

- Behat https://github.com/Behat/Behat - a BDD framework

- phpSpec https://github.com/phpspec/phpspec - specBDD framework

- Sylius https://github.com/Sylius/Sylius - an e-commerce solution built using Symfony and BDD.

All of these are written with current best practices, respect SOLID principles etc.


Shameless plug-

Stash - PHP Caching Library https://github.com/tedivm/Stash

Fetch - IMAP Mail Reading https://github.com/tedivm/Fetch

JShrink - Javascript Minification https://github.com/tedivm/JShrink

I've also created a PHP Project Template (https://github.com/tedivm/PhpProjectTemplate) that includes things like composer, unit test configuration, travis-ci and coveralls integration, and various other things that people can use to bootstrap their modern php project.


i wasn't gonna post my own, but might as well.

https://github.com/leeoniya/dump_r.php

via Composer: https://packagist.org/packages/leeoniya/dump-r


https://github.com/scrutinizer-ci/php-analyzer is a good example of modern PHP development IMO.


Phabricator - http://phabricator.org

Written, unsurprisingly, by Facebook. Probably runs pretty well on HipHop I would imagine.


"Written in PHP so literally anyone can contribute, even if they have no idea how to program."

That made me chuckle.


Laravel.


That's just a wrapper around Symfony2.


It's definitely not a wrapper, but it does use a lot of its components.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: