SlideShare a Scribd company logo
+




    Agile Tools for PHP

    Philip Ting
+
    History of PHP

       1994 Rasmus Lerdorf, CGI binaries in C, online visit tracker

       1995 PHP released

       1997 PHP 2

       1998 Zeev Suraski and Andi Gutmans rewrite PHP into PHP 3,
        resembles PHP today

       2000 PHP 4, Zend engine
+
    History of PHP

       2004 PHP 5.0, Zend engine 2

       2005 PHP 5.1, PDO database access

       2006 PHP 5.2, JSON support

       2009 PHP 5.3, namespace, late static bindings, closures

       2012 PHP 5.4, traits, cli web server, array syntax
+
    Problems PHP Faced

    •   Code Base
        •   Naming inconsistencies (isset, is_null)

    •   Lack of modern language paradigms
        •   Changed for 5.3+

    •   Lack of solid development tools
        •   Changed recently
+
    Agile Values




       Development tools are meant to address adaptability and simplicity
+
    Web Frameworks

       Typically MVC
           Model
           View
           Controller

       Simplicity and Adaptability
+
    Web Frameworks - Simplicity

       CodeIgniter
           Easy to plug in, simple to work with, large community

       Kohana
           Originally fork of CodeIgniter, also simple to work with

       CakePHP
           Similar to Rails, lots of code generation
+
    Web Frameworks - Adaptability

       Zend Framework
           Enterprise development

       Symfony
           Enterprise development
           Other pieces
               Silex microframework (like Sinatra)
               CLI
+
    Test Frameworks

       Unit Tests
           PHPUnit, SimpleUnit

       BDD
           Behat, Codeception
           Selenium integration
           Cucumber integration
+
    Object Relational Mappers

       Object Relational Mappers (ORM)
           Used for generating models
           Can be considered frameworks of their own
           Meant to address both adaptability and simplicity

       ActiveRecord
           Doctrine, Propel

       DataMapper
           Doctrine 2
+
    Other Tools

       Dependency Management
           pecl, pear, Composer

       Continuous Integration
           Can use Jenkins
           Xinc

       Build tools
           Phing
               Similar to Ant
+
    Conclusion

       PHP is a very viable language to use for your project

       Google and Github are your friends
+
    Demonstration

More Related Content

PDF
PHP is the King, nodejs is the Prince and Lua is the fool
PDF
APIdays 2015 - The State of Web API Languages
PDF
Intro to Crystal Programming Language
PPT
Tech talk: PHP
PDF
A brief intro to RubyMotion
PDF
Crystal
PDF
OSS at Microsoft
PPTX
WeCode IL: Confessions of a java developer that fell in love with the groovy...
PHP is the King, nodejs is the Prince and Lua is the fool
APIdays 2015 - The State of Web API Languages
Intro to Crystal Programming Language
Tech talk: PHP
A brief intro to RubyMotion
Crystal
OSS at Microsoft
WeCode IL: Confessions of a java developer that fell in love with the groovy...

What's hot (20)

PPTX
From .NET Core 3, all the rest will be legacy
PDF
Scala vs ruby
PPTX
Intro to Kotlin Minia GDG DevFest 2017
PDF
Let your REST API talk @java2days
PDF
Groovy Finesse
PDF
Agile Development with Smalltalk - Short
PDF
Is this Swift for Android? A short introduction to the Kotlin language
PDF
The new era of PHP web development.
PPT
.Net Introduction
PPTX
SyPy IronPython
PPTX
Microsoft .Net Framework
PDF
GDG Algiers DevFest 2013 Cool AndroidLibs
PDF
5 important languages for DevOps
PDF
[INNOVATUBE] Tech Talk #3: Golang - Takaaki Mizuno
PPTX
Confessions of a java developer that fell in love with the groovy language
PDF
Agile Development with Smalltalk - Long
PPT
TypeScript for Alfresco and CMIS - Alfresco DevCon 2012 San Jose
PPT
Net overview
PPTX
.Net language support
PPTX
Introduction of .net framework
From .NET Core 3, all the rest will be legacy
Scala vs ruby
Intro to Kotlin Minia GDG DevFest 2017
Let your REST API talk @java2days
Groovy Finesse
Agile Development with Smalltalk - Short
Is this Swift for Android? A short introduction to the Kotlin language
The new era of PHP web development.
.Net Introduction
SyPy IronPython
Microsoft .Net Framework
GDG Algiers DevFest 2013 Cool AndroidLibs
5 important languages for DevOps
[INNOVATUBE] Tech Talk #3: Golang - Takaaki Mizuno
Confessions of a java developer that fell in love with the groovy language
Agile Development with Smalltalk - Long
TypeScript for Alfresco and CMIS - Alfresco DevCon 2012 San Jose
Net overview
.Net language support
Introduction of .net framework
Ad

Viewers also liked (20)

PPTX
Wba
PDF
Rundong Tang
PDF
Kepemimpinan
PPTX
Ramos, alexis t. regression
PPTX
стратегические решения онлайн
PDF
что такое игра го в расширенной версии
PPTX
Langcauon, judella y. correlation
PPT
Neelttei hicheel 8 a
PDF
Bagsh nariin hural ot [read only]-1346987264
PDF
Becoming A Php Ninja
PDF
Artificial Intelligence in Travel for TravelFest Travel 2.0 Conference
PDF
Vectra manual
PDF
Emotional intelligence - For MBA's Disaster Management
PPTX
Latest spectral ppt nov 2012 copy 2
PPTX
Integral calculus
PPTX
SD PHP Zend Framework
PPTX
Ahimsa - for Ethos subject!
PPT
Huong dong 2
PDF
Bahan persiapan lomdes
PPTX
Nintendo presentation 3.0
Wba
Rundong Tang
Kepemimpinan
Ramos, alexis t. regression
стратегические решения онлайн
что такое игра го в расширенной версии
Langcauon, judella y. correlation
Neelttei hicheel 8 a
Bagsh nariin hural ot [read only]-1346987264
Becoming A Php Ninja
Artificial Intelligence in Travel for TravelFest Travel 2.0 Conference
Vectra manual
Emotional intelligence - For MBA's Disaster Management
Latest spectral ppt nov 2012 copy 2
Integral calculus
SD PHP Zend Framework
Ahimsa - for Ethos subject!
Huong dong 2
Bahan persiapan lomdes
Nintendo presentation 3.0
Ad

Similar to Agile Tools for PHP (20)

PDF
PHP - Programming language war, does it matter
PPT
Php Zen with Zend
PPT
Php Frameworks
PDF
Run Fast, Try Not to Break S**t
PDF
Webfest 2011 PHP on Windows by Rama Yurindra
PPTX
Introduction To Web Development & The New Digital Workplace
PPTX
Porting Projects to .NET 5
PDF
A Tale of Two Toolkits
PDF
Unleash your Symfony projects with eZ Platform
PDF
RadPHP XE Datasheet
PPTX
PHP and Zend Framework on Windows
PPTX
Zend Products and PHP for IBMi
PPTX
C#: Past, Present and Future
PPTX
We b development trends
PPT
Introduction to Server-Side Development with PHP.ppt
PPTX
Feature and Compare between PHP Frameworks
PDF
Zend Framework 2, What's new, Confoo 2011
KEY
Zend Code in ZF 2.0
PPTX
Top 10 php frameworks in 2021
PPTX
PHP on IBM i Tutorial
PHP - Programming language war, does it matter
Php Zen with Zend
Php Frameworks
Run Fast, Try Not to Break S**t
Webfest 2011 PHP on Windows by Rama Yurindra
Introduction To Web Development & The New Digital Workplace
Porting Projects to .NET 5
A Tale of Two Toolkits
Unleash your Symfony projects with eZ Platform
RadPHP XE Datasheet
PHP and Zend Framework on Windows
Zend Products and PHP for IBMi
C#: Past, Present and Future
We b development trends
Introduction to Server-Side Development with PHP.ppt
Feature and Compare between PHP Frameworks
Zend Framework 2, What's new, Confoo 2011
Zend Code in ZF 2.0
Top 10 php frameworks in 2021
PHP on IBM i Tutorial

Recently uploaded (20)

PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
KodekX | Application Modernization Development
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Big Data Technologies - Introduction.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Electronic commerce courselecture one. Pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Cloud computing and distributed systems.
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPT
Teaching material agriculture food technology
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Unlocking AI with Model Context Protocol (MCP)
KodekX | Application Modernization Development
Diabetes mellitus diagnosis method based random forest with bat algorithm
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
NewMind AI Monthly Chronicles - July 2025
Review of recent advances in non-invasive hemoglobin estimation
Big Data Technologies - Introduction.pptx
Encapsulation_ Review paper, used for researhc scholars
Electronic commerce courselecture one. Pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Cloud computing and distributed systems.
The AUB Centre for AI in Media Proposal.docx
20250228 LYD VKU AI Blended-Learning.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Teaching material agriculture food technology
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy

Agile Tools for PHP

  • 1. + Agile Tools for PHP Philip Ting
  • 2. + History of PHP  1994 Rasmus Lerdorf, CGI binaries in C, online visit tracker  1995 PHP released  1997 PHP 2  1998 Zeev Suraski and Andi Gutmans rewrite PHP into PHP 3, resembles PHP today  2000 PHP 4, Zend engine
  • 3. + History of PHP  2004 PHP 5.0, Zend engine 2  2005 PHP 5.1, PDO database access  2006 PHP 5.2, JSON support  2009 PHP 5.3, namespace, late static bindings, closures  2012 PHP 5.4, traits, cli web server, array syntax
  • 4. + Problems PHP Faced • Code Base • Naming inconsistencies (isset, is_null) • Lack of modern language paradigms • Changed for 5.3+ • Lack of solid development tools • Changed recently
  • 5. + Agile Values  Development tools are meant to address adaptability and simplicity
  • 6. + Web Frameworks  Typically MVC  Model  View  Controller  Simplicity and Adaptability
  • 7. + Web Frameworks - Simplicity  CodeIgniter  Easy to plug in, simple to work with, large community  Kohana  Originally fork of CodeIgniter, also simple to work with  CakePHP  Similar to Rails, lots of code generation
  • 8. + Web Frameworks - Adaptability  Zend Framework  Enterprise development  Symfony  Enterprise development  Other pieces  Silex microframework (like Sinatra)  CLI
  • 9. + Test Frameworks  Unit Tests  PHPUnit, SimpleUnit  BDD  Behat, Codeception  Selenium integration  Cucumber integration
  • 10. + Object Relational Mappers  Object Relational Mappers (ORM)  Used for generating models  Can be considered frameworks of their own  Meant to address both adaptability and simplicity  ActiveRecord  Doctrine, Propel  DataMapper  Doctrine 2
  • 11. + Other Tools  Dependency Management  pecl, pear, Composer  Continuous Integration  Can use Jenkins  Xinc  Build tools  Phing  Similar to Ant
  • 12. + Conclusion  PHP is a very viable language to use for your project  Google and Github are your friends
  • 13. + Demonstration