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
86
Welcome to Erlang
cystbear
0
93
Erlang/N2O KNPMeetup
cystbear
0
160
Symfony Best Practices and beyond
cystbear
1
240
DDD on example of Symfony (SymfonyCamp UA 2014)
cystbear
3
920
MongoDB KNPLabs GeekTime
cystbear
1
85
Other Decks in Programming
See All in Programming
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
590
CSC305 Lecture 08
javiergs
PRO
0
250
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
3.4k
開発生産性を上げるための生成AI活用術
starfish719
3
1.5k
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
310
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
180
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
330
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
170
Swift Concurrency - 状態監視の罠
objectiveaudio
2
550
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
370
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
230
CSC509 Lecture 04
javiergs
PRO
0
300
Featured
See All Featured
A designer walks into a library…
pauljervisheath
209
24k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
How to Ace a Technical Interview
jacobian
280
24k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Gamification - CAS2011
davidbonilla
81
5.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Balancing Empowerment & Direction
lara
5
690
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Documentation Writing (for coders)
carmenintech
75
5.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
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?