PHP en 2021 - eslib.re
Transcript of PHP en 2021 - eslib.re
![Page 1: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/1.jpg)
PHP en 2021
![Page 2: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/2.jpg)
1. Evolución2. Soporte3. Benchmarks4. Popularidad5. Casos concretos6. Presente y futuro
PHP
![Page 3: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/3.jpg)
1Evolución
![Page 4: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/4.jpg)
1993
![Page 5: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/5.jpg)
C/C++Perl
![Page 6: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/6.jpg)
• Pretendía ser un sistema de plantillas• Conjunto de Common Gateway
Interface (CGI) escritos en C• Los extiende para trabajar con:
• Formularios• BB.DD.
0.x (1994)
![Page 7: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/7.jpg)
1.0 2.0 3.0 4.0
1995 1997 1998 2000
![Page 8: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/8.jpg)
• vBulletin (2000)• phpBB (2000)• Simple Machines Forum (2001)• Invision Community (2002)
• Invision Power Board (2002)
Foros
![Page 9: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/9.jpg)
• Drupal (2000)• Moodle (1999-2001)• WordPress (2003)• Joomla (2005)
CMS
![Page 10: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/10.jpg)
• SourceForge (1999)• Wikipedia (2001)• Mailchimp (2001)• Flickr (2004)• Facebook (2004)
Webs
![Page 11: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/11.jpg)
• Linux• Apache• PHP• MySQL
LAMP
![Page 12: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/12.jpg)
5.0 5.1 5.2 5.3 5.4 5.5 5.6
2004 2005 2006 2009 2012 2013 2014
![Page 13: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/13.jpg)
• CakePHP (2005)• Symfony (2005)• CodeIgniter (2006)• Zend Framework (2006) Laminas →
Project• Laravel (2011)• Doctrine ORM (2006)
Frameworks
![Page 14: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/14.jpg)
• PrestaShop (2007)• Magento (2008)• OpenCart (2010)• WooCommerce (2011)
Comercio electrónico
![Page 15: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/15.jpg)
• Silex (2010) -> EOL junio 2018• Slim (2011)
Microframeworks
![Page 16: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/16.jpg)
• 2012• Gestor de dependencias• Inspirado en npm y en bundler• Packagist• Configuración JSON• Uso simple y robusto
Composer
![Page 17: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/17.jpg)
• 2009: PHP Standards Group • 2011: PHP Framework
Interoperability Group• PSR: PHP Standard
Recommendations (13)• WordPress, Laravel, Symfony
PHP-FIG
![Page 18: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/18.jpg)
Especificación del lenguaje PHP – 2014
20 años desde el inicio
![Page 19: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/19.jpg)
• 2010• HHVM: VM con compilación JIT • Rendimiento superior• Hack: tipado estático y dinámico• Septiembre 2017. Deja de ser
compatible con PHP
![Page 20: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/20.jpg)
• Versión mayor o menor cada año• 2 años soporte• 1 año más de soporte de
seguridad
Evolución
![Page 21: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/21.jpg)
7.0 7.1 7.2 7.3 7.4 8.0
2015 2016 2017 2018 2019 2020
![Page 22: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/22.jpg)
2Soporte en las
distintas versiones
![Page 23: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/23.jpg)
![Page 24: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/24.jpg)
3Benchmarks
![Page 25: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/25.jpg)
![Page 26: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/26.jpg)
![Page 27: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/27.jpg)
![Page 28: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/28.jpg)
€
![Page 29: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/29.jpg)
4Popularidad
Backend web
![Page 30: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/30.jpg)
79,2 %w3techs.com
![Page 31: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/31.jpg)
![Page 32: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/32.jpg)
![Page 33: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/33.jpg)
![Page 34: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/34.jpg)
• Facebook.com *• Wikipedia.org• Vk.com• WordPress.com• Pinterest.com • Vimeo.com
Sitios populares
![Page 35: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/35.jpg)
5Casos concretos
![Page 36: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/36.jpg)
• 2003• CMS líder: 41,9 % de la cuota de mercado
web• 65,0 % de la cuota de mercado de CMS• Propósito general, no solo blogs• Automattic (valorada en 3000 millones $)
WordPress
![Page 37: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/37.jpg)
• Comunidad muy grande• 96 grupos de meetup en España• Nivel mundial:
• 749 grupos• 109 países• 464.806 miembros
• 142 WordCamps en 2019 (36.000 asistentes)
WordPress
![Page 38: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/38.jpg)
• Ecosistema de negocios inmenso• Hosting dedicado• Marketplaces• Empresas de temas y plugins • Agencias de servicios
WordPress
![Page 39: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/39.jpg)
• Nace en 2011 • Framework MVC• Taylor Otwell• Basado en los componentes de Symfony• ORM propio (Eloquent)• Motor de plantillas propio (Blade)• Query builder
Laravel
![Page 40: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/40.jpg)
• Migraciones y seeding en las BB.DD.• Composer como gestión de paquetes• Test unitario (PHPUnit) y tests de integración
(Dusk) • Entornos de desarrollo: Homestead, Valet• CLI (Artisan)• Paquetes oficiales: Cashier, Passport,
Socialite,...
Laravel
![Page 41: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/41.jpg)
• Gran comunidad: paquetes• Modelo de negocio SaaS: Forge, Envoyer,
Vapor, Nova, certificación,...• Conferencias: US, EU, Australia• Curva de aprendizaje pequeña
Laravel
![Page 42: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/42.jpg)
• Nace en 2005• Framework web• Conjunto de bibliotecas PHP desacopladas• Fabien Potencier • SensioLabs• Doctrine (ORM)• Twig (motor de plantillas)
Symfony
![Page 43: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/43.jpg)
• Sus componentes son usados en otros proyectos: • Laravel • Drupal
• Negocio SaaS: Cloud, SymfonyCasts, SymfonyInsight, blackfire, certificación, conferencias,...
Symfony
![Page 44: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/44.jpg)
6Presente y futuro
![Page 45: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/45.jpg)
• Curva de aprendizaje baja• Barrera de entrada pequeña• Accesible a una gran cantidad de usuarios,
no solo a programadores => diversidad• Accesible en todos los ISP• Barato• Diseñado para web, aunque válido en otros
entornos (CLI,...)
Presente y futuro
![Page 46: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/46.jpg)
• Altamente escalable. Buen rendimiento• Comunidad enorme• Programadores disponibles para contratar• Formación rápida• Lenguaje OO y completo• Composer• PSR (PHP Standards Recommendations)
Presente y futuro
![Page 47: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/47.jpg)
• Herramientas de gran calidad: • IDE: PhpStorm• Entornos desarrollo: Homestead, LAMP,
VVV,...• Tests: PHPUnit, Laravel Dusk, Symfony
Panther,...• Librerías: The League of Extraordinary
Packages, Spatie,...
Presente y futuro
![Page 48: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/48.jpg)
• Herramientas ampliamente usadas: • CMS: WordPress, Drupal,... • Frameworks: Laravel, Symfony,...• Comercio electrónico: WooCommerce,
Magento, PrestaShop,...• LAMP omnipresente
Presente y futuro
![Page 49: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/49.jpg)
• Barrera de entrada pequeña => código y proyectos de mala calidad => mala imagen
• Carencias en el lenguaje• Mucho tiempo para nuevas funcionalidades• Falta de una fundación que gestione el
proyecto• Falta de financiación• Mala imagen, poco «cool»
Presente y futuro
![Page 50: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/50.jpg)
¿Debemos aprender PHP en
2021?
![Page 51: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/51.jpg)
Sí
![Page 52: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/52.jpg)
Pero, ¿PHP no está muerto?
![Page 53: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/53.jpg)
![Page 54: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/54.jpg)
![Page 55: PHP en 2021 - eslib.re](https://reader036.fdocuments.es/reader036/viewer/2022080100/62e6069420021030f01b69fe/html5/thumbnails/55.jpg)