Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PHP. Trends, implementations, frameworks and so...
Search
Oleg Zinchenko
April 28, 2014
Programming
3
140
PHP. Trends, implementations, frameworks and solutions
It's all about Symfony2 solutions
Oleg Zinchenko
April 28, 2014
Tweet
Share
More Decks by Oleg Zinchenko
See All by Oleg Zinchenko
ORO Meetup #4
cystbear
0
83
Keep It Simple Security (Symfony Cafe 28-01-2016)
cystbear
0
130
Erlang (GeekTalks)
cystbear
0
77
Clojure basics
cystbear
0
85
Welcome to Erlang
cystbear
0
91
Erlang/N2O KNPMeetup
cystbear
0
160
Symfony Best Practices and beyond
cystbear
1
230
DDD on example of Symfony (SymfonyCamp UA 2014)
cystbear
3
920
MongoDB KNPLabs GeekTime
cystbear
1
84
Other Decks in Programming
See All in Programming
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
140
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
650
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.6k
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
830
Hack Claude Code with Claude Code
choplin
4
2.2k
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
7.6k
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
290
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1k
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
640
Porting a visionOS App to Android XR
akkeylab
0
480
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
11k
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
930
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
Visualization
eitanlees
146
16k
Music & Morning Musume
bryan
46
6.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Making Projects Easy
brettharned
116
6.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
310
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Designing Experiences People Love
moore
142
24k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Transcript
Trends, implementations, frameworks and solutions PHP
None
None
Stats
~82% http://w3techs.com/technologies/overview/programming_language/all
GitHub 14.4M Repos 970K Issues 707K PRs
PHP new features Namespaces Late Static Binding Traits Array short
syntax Closures scopes and $this Built-in web server Generators try-catch Finally Password hashing API
SPDY
http://www.eschrade.com/page/magento-performance-on-php-5-3-5-4-and-5-5rc3/ Magento Benchmark
PHP-Fig Autoloading Code Style Logging Interface Doc Blocks Cache Interface
Autoloading https://getcomposer.org/ https://packagist.org/
composer.json { "name": "symfony/framework-standard-edition", "license": "MIT", "type": "project", "description": "The
\"Symfony Standard Edition\" distribution", "autoload": { "psr-0": { "": "src/", "SymfonyStandard": "app/" } }, "require": { "php": ">=5.3.3", "symfony/symfony": "2.5.x-dev", "doctrine/orm": "~2.2,>=2.2.3", "doctrine/doctrine-bundle": "~1.2", … } }
Implementations http://www.toptal.com/python/why-are-there-so-many-pythons http://habrahabr.ru/post/209812/
Zend Engine Implementations http://php.net/
HipHopVM Implementations http://hhvm.com/
Hack Lang http://hacklang.org/ <?hh class MyClass { public function alpha():
int { return 1; } public function beta(): string { return 'hi test'; } } function f(MyClass $my_inst): string { // Fix me! return $my_inst->alpha(); }
KPHP Implementations http://habrahabr.ru/post/214877
JPHP Implementations https://github.com/jphp-compiler/jphp
PHPPHP Implementations https://github.com/ircmaxell/PHPPHP
HippyVM Implementations http://hippyvm.com/
See also http://phalconphp.com/en/ http://zephir-lang.com/ http://www.php-cpp.com/
None
symfony1 Started in 2005 67 releases ~40k commits End of
livecycle Nov 2012
Symfony(2) First public commit 01-04-2010 First Birthday 28-07-2011 First LTS
May 2013 73 releases ~17k commits
GitHub stats 11k Issues 7k PRs 8k Stars 3k Forks
https://github.com/symfony/symfony
What is Symfony? Reusable set of standalone, decoupled PHP components
Based on components Symfony is a full-stack framework Symfony is an HTTP framework Request/Response framework Non MVC http://fabien.potencier.org/article/49/what-is-symfony2
Components HttpFoundation Routing Security Yaml HttpKernel http://symfony.com/components DependencyInjection EventDispatcher Form
Validator Templating
Symfony Basics <?php use Symfony\Component\HttpFoundation\Request; $kernel = new AppKernel('prod', false);
$request = Request::createFromGlobals(); $response = $kernel->handle($request); $response->send();
What about “M”? Doctrine2
Doctrine2 RDBMS MongoDB CouchDB OXM OrientDB https://github.com/doctrine
PHP frameworks Laravel (4) Zend Zend2 Yii Yii2 Kohana CakePHP
CodeIgniter http://ellislab.com/blog/entry/ellislab-seeking-new-owner-for-codeigniter
Symfony products Drupal phpBB Laravel Magento eZ Publish http://symfony.com/projects
Symfony products RedKite CMS Symfony CMF Decoupled CMS Sylius eCommerce
Vespoline eCommerce Oro CRM Akeneo PIM (wat?) http://symfony.com/projects
RedKite CMS http://redkite-labs.com/
Symfony CMF http://cmf.symfony.com/
Decoupled CMS http://decoupledcms.org/
PHP Content Repository JSR based (JSR-170/283) PHPCR is bucket of
interfaces Implementations: Jackalope, Midgard2 Storages: Jackrabbit Doctrine-DBAL Doctrine-MongoDB Prismic.io http://phpcr.github.io/ http://jackalope.github.io/ http://midgard-project.org/phpcr/ https://jackrabbit.apache.org/ https://prismic.io/
Sylius http://sylius.org/ http://sylius.com/
Vespolina http://vespolina.org/
Oro CRM http://www.orocrm.com/
Akeneo http://www.akeneo.com/ A Product Information Management aka PIM, PCM or
Products MDM
Akeneo http://www.akeneo.com/
and growing... http://symfony.com/projects
Questions?