SlideShare a Scribd company logo
Tech Talk: PHP
Lee Jen Wei
Overview
 Web Development Trends
 What is PHP ?
 MVC Frameworks
 Mobile Web Apps
 Command Line PHP
 Sites Using PHP
 Pros
 Cons
 References
Web Development Trends
 PHP
 Ruby (on Rails)
 Python (Django)
 ASP.NET
 JavaScript (Ajax, Node.js, AngularJS, Backbone.js,
Ember.js etc)
 Java
 Perl
 Scala (Play Framework)
 Erlang
 Clojure
 Groovy/Grails etc
What is PHP?
 PHP is mainly focused on server-side scripting, so
you can do anything any other CGI program can do,
such as collect form data, generate dynamic page
content, or send and receive cookies.
 The best things in using PHP are that it is extremely
simple for a newcomer, but offers many advanced
features for a professional programmer.
PHP: Hypertext Preprocessor
 Development started in 1994, by Rasmus Lerdorf.
 Server-side scripting language
 Interpreted language
 Multi-platform (Linux, *nix, Windows)
 Syntax resembles C and Perl
 Simpler and faster to develop in (than C and Perl
or Java)
 Fast, flexible and pragmatic
What is PHP?
Example:
Where does PHP fit ?
Web Browser
Internet or
Intranet
page
Web
HTTP
Request
Page
Web
page
Web
Server
server
Added
function
ality
Added
function
ality
Client-side
“Active pages”
JavaScript, VBScript,
Applet, ActiveX
Server-side
“Dynamic pages”
CGI, SSI, Server
API, ASP, JSP, PHP,
COM/DCOM,
CORBAActive and dynamic page technology
can be used together – server-side
program generates customized active
pages.
Putting it all together
Web-Client
Web-Server
DBMS
Database
Output
SQL
commands
PHP
HTML-Form
(+JavaScript)
Reply
WWW
Submit
Data
Call PHP
interpreter
Response Response
LAN
Web-Browser
Database
Server
PHP – MVC Frameworks
Model-View-Controller (MVC)
Yii
CakePHP
CodeIgniter
Symfony
Zend Framework
Kohana
many others
PHP – Mobile Web Apps
 Common to use server-side PHP to develop Mobile
Web Apps or Hybrid Apps
 Reuse php web site backend components and logic
 Enjoy the advantages of PHP
 Eg.
PHP Yii Framework
+
jQuery Mobile
(or any mobile web app framework)
Command Line PHP
 What is this good for:
 Parsing files to put into a database
 Ideal for scripts regularly executed using cron (on
*nix or Linux) or Task Scheduler (on Windows).
 Anything you use a shell script or perl script to do
 Variables of use:
 $argc, $argv[]
 $stdin, $stdout, $stderr
Sites using PHP
Sites using PHP
 Yahoo, Facebook, Google, YouTube, eBay, Flickr,
Zynga, Wikipedia, Craiglist, Digg
 Cisco, Oracle, Intel, Nokia, China Mobile,
 Wordpress sites (CMS), Drupal sites (CMS)
 etc
PHP - Pros
 Open source, completely free
 Specifically designed for Web Development /
Developers
 Excellent documentation
 Simplicity, Easy to learn, including frameworks
 Largest community support
 Multi-platforms
 Easy deployment (just copy the files)
 Easy to scale up and out
 Readily available pool of talents/coders
PHP - Pros
 Rapid prototyping, fast development time
 Lightweight, low overheads
 Fast execution time
 Silo process, loosely coupled
 Highly configurable
 Procedural / Object Oriented programming
 Extensive libraries / modules
 Support wide range of interfaces (DB, Outputs,
Protocols, Caching etc)
PHP - Cons
 Best used with caching stack
 Not thread-safe
 Less efficient multithreading support
 No strong standards of coding style
 Flexible, many ways to accomplished same task
 Not strongly typed, implicit conversion
 Not particularly sexy
 No built-in scheduler
 Not good for GUI or desktop apps
References
 www.php.net
 pecl.php.net
 pear.php.net
 www.yiiframework.com
 cakephp.org
 www.codeigniter.com

More Related Content

What's hot

PHP is the King, nodejs is the Prince and Lua is the fool
PHP is the King, nodejs is the Prince and Lua is the foolPHP is the King, nodejs is the Prince and Lua is the fool
PHP is the King, nodejs is the Prince and Lua is the fool
Alessandro Cinelli (cirpo)
 
PHP Files: An Introduction
PHP Files: An IntroductionPHP Files: An Introduction
PHP Files: An Introduction
Jacques Woodcock
 
A New Approach Towards Web-based IDEs
A New Approach Towards Web-based IDEsA New Approach Towards Web-based IDEs
A New Approach Towards Web-based IDEs
Dr. Jan Köhnlein
 
PHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the foolPHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the fool
Alessandro Cinelli (cirpo)
 
Blazor - .NET in the Browser!
Blazor - .NET in the Browser!Blazor - .NET in the Browser!
Blazor - .NET in the Browser!
David Paquette
 
PHP is the king, nodejs is the prince and Lua is the fool
PHP is the king, nodejs is the prince and Lua is the foolPHP is the king, nodejs is the prince and Lua is the fool
PHP is the king, nodejs is the prince and Lua is the foolAlessandro Cinelli (cirpo)
 
Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)
Paul Jones
 
Blazor v1.1
Blazor v1.1Blazor v1.1
DevDay 2018 - Blazor
DevDay 2018 - BlazorDevDay 2018 - Blazor
DevDay 2018 - Blazor
Denis Voituron
 
Training ppt
Training pptTraining ppt
Training ppt
nikita vijay
 
Groovy and noteworthy
Groovy and noteworthyGroovy and noteworthy
Groovy and noteworthy
Izzet Mustafaiev
 
Opensourceman ( url for slides with animations https://goo.gl/R638tW )
Opensourceman ( url for slides with animations https://goo.gl/R638tW )Opensourceman ( url for slides with animations https://goo.gl/R638tW )
Opensourceman ( url for slides with animations https://goo.gl/R638tW )
Андрей Вандакуров
 
Web development revolution
Web development revolutionWeb development revolution
Web development revolution
Ahmed El-Zekred
 
Node.js Getting Started &amd Best Practices
Node.js Getting Started &amd Best PracticesNode.js Getting Started &amd Best Practices
Node.js Getting Started &amd Best Practices
botsplash.com
 
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
DrupalDay
 
Web to App:作業系統革命 Firefox OS
Web to App:作業系統革命  Firefox OSWeb to App:作業系統革命  Firefox OS
Web to App:作業系統革命 Firefox OS
Veck Hsiao
 
UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...
UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...
UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...
Jonathan Pletzke
 
Blazor - The New Silverlight?
Blazor - The New Silverlight?Blazor - The New Silverlight?
Blazor - The New Silverlight?
Christian Nagel
 
Programming languages used in Firefox OS
Programming languages used in Firefox OSProgramming languages used in Firefox OS
Programming languages used in Firefox OS
Prathamesh Chavan
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development Workflow
Vũ Nguyễn
 

What's hot (20)

PHP is the King, nodejs is the Prince and Lua is the fool
PHP is the King, nodejs is the Prince and Lua is the foolPHP is the King, nodejs is the Prince and Lua is the fool
PHP is the King, nodejs is the Prince and Lua is the fool
 
PHP Files: An Introduction
PHP Files: An IntroductionPHP Files: An Introduction
PHP Files: An Introduction
 
A New Approach Towards Web-based IDEs
A New Approach Towards Web-based IDEsA New Approach Towards Web-based IDEs
A New Approach Towards Web-based IDEs
 
PHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the foolPHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the fool
 
Blazor - .NET in the Browser!
Blazor - .NET in the Browser!Blazor - .NET in the Browser!
Blazor - .NET in the Browser!
 
PHP is the king, nodejs is the prince and Lua is the fool
PHP is the king, nodejs is the prince and Lua is the foolPHP is the king, nodejs is the prince and Lua is the fool
PHP is the king, nodejs is the prince and Lua is the fool
 
Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)
 
Blazor v1.1
Blazor v1.1Blazor v1.1
Blazor v1.1
 
DevDay 2018 - Blazor
DevDay 2018 - BlazorDevDay 2018 - Blazor
DevDay 2018 - Blazor
 
Training ppt
Training pptTraining ppt
Training ppt
 
Groovy and noteworthy
Groovy and noteworthyGroovy and noteworthy
Groovy and noteworthy
 
Opensourceman ( url for slides with animations https://goo.gl/R638tW )
Opensourceman ( url for slides with animations https://goo.gl/R638tW )Opensourceman ( url for slides with animations https://goo.gl/R638tW )
Opensourceman ( url for slides with animations https://goo.gl/R638tW )
 
Web development revolution
Web development revolutionWeb development revolution
Web development revolution
 
Node.js Getting Started &amd Best Practices
Node.js Getting Started &amd Best PracticesNode.js Getting Started &amd Best Practices
Node.js Getting Started &amd Best Practices
 
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8[drupalday2017] - DevOps: strumenti di automazione per Drupal8
[drupalday2017] - DevOps: strumenti di automazione per Drupal8
 
Web to App:作業系統革命 Firefox OS
Web to App:作業系統革命  Firefox OSWeb to App:作業系統革命  Firefox OS
Web to App:作業系統革命 Firefox OS
 
UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...
UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...
UNC Chapel Hill 2014 CTC Retreat - Carolina Cloudapps / RedHat OpenShift Ente...
 
Blazor - The New Silverlight?
Blazor - The New Silverlight?Blazor - The New Silverlight?
Blazor - The New Silverlight?
 
Programming languages used in Firefox OS
Programming languages used in Firefox OSProgramming languages used in Firefox OS
Programming languages used in Firefox OS
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development Workflow
 

Viewers also liked

Introduction to the CII Badge Programe, OW2con'16, Paris.
Introduction to the CII Badge Programe, OW2con'16, Paris. Introduction to the CII Badge Programe, OW2con'16, Paris.
Introduction to the CII Badge Programe, OW2con'16, Paris.
OW2
 
Wildi 2009 Resume
Wildi 2009 ResumeWildi 2009 Resume
Wildi 2009 Resume
Wildi
 
Logic Circuit Project Final Presentation
Logic Circuit Project Final PresentationLogic Circuit Project Final Presentation
Logic Circuit Project Final Presentation
Matthew Chang
 
OW2con'14 - Keynote from Microsoft
OW2con'14 - Keynote from MicrosoftOW2con'14 - Keynote from Microsoft
OW2con'14 - Keynote from Microsoft
OW2
 
Itf ipp ch06_2012_final
Itf ipp ch06_2012_finalItf ipp ch06_2012_final
Itf ipp ch06_2012_finaldphil002
 
197x 20090704 Scalaで並行プログラミング
197x 20090704 Scalaで並行プログラミング197x 20090704 Scalaで並行プログラミング
197x 20090704 Scalaで並行プログラミングNet Penguin
 
Square Numbers - Update November 12
Square Numbers - Update November 12Square Numbers - Update November 12
Square Numbers - Update November 12
figo GmbH
 
OW2con'14 - OpenPaaS, the open source collaboration platform, Linagora
OW2con'14 - OpenPaaS, the open source collaboration platform, LinagoraOW2con'14 - OpenPaaS, the open source collaboration platform, Linagora
OW2con'14 - OpenPaaS, the open source collaboration platform, Linagora
OW2
 
OW2con'14- erOCCI, a scalable, model-based REST API framework
OW2con'14- erOCCI, a scalable, model-based REST API frameworkOW2con'14- erOCCI, a scalable, model-based REST API framework
OW2con'14- erOCCI, a scalable, model-based REST API framework
OW2
 
1 early britain. the celts
1  early britain. the celts1  early britain. the celts
1 early britain. the celtsMr. Euc@s
 
2013 cch basic principles ch12
2013 cch basic principles ch122013 cch basic principles ch12
2013 cch basic principles ch12dphil002
 
MuseScore - Capitole du Libre 2012
MuseScore - Capitole du Libre 2012MuseScore - Capitole du Libre 2012
MuseScore - Capitole du Libre 2012
Nicolas Froment
 
To be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, ParisTo be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, ParisOW2
 
프로젝트N 기획문서
프로젝트N 기획문서프로젝트N 기획문서
프로젝트N 기획문서
Matthew Chang
 
OW2con'14 - Sustainable financing of open source, an insider view, XWiki
OW2con'14 - Sustainable financing of open source, an insider view, XWikiOW2con'14 - Sustainable financing of open source, an insider view, XWiki
OW2con'14 - Sustainable financing of open source, an insider view, XWiki
OW2
 
E-Government Portal-DAWLATI, OW2con'12, Paris
E-Government Portal-DAWLATI, OW2con'12, ParisE-Government Portal-DAWLATI, OW2con'12, Paris
E-Government Portal-DAWLATI, OW2con'12, Paris
OW2
 
Giethoon villagewithoutstreets
Giethoon villagewithoutstreetsGiethoon villagewithoutstreets
Giethoon villagewithoutstreets
alfcoltrane
 
Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...
Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...
Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...
OW2
 

Viewers also liked (20)

Introduction to the CII Badge Programe, OW2con'16, Paris.
Introduction to the CII Badge Programe, OW2con'16, Paris. Introduction to the CII Badge Programe, OW2con'16, Paris.
Introduction to the CII Badge Programe, OW2con'16, Paris.
 
Wildi 2009 Resume
Wildi 2009 ResumeWildi 2009 Resume
Wildi 2009 Resume
 
Logic Circuit Project Final Presentation
Logic Circuit Project Final PresentationLogic Circuit Project Final Presentation
Logic Circuit Project Final Presentation
 
OW2con'14 - Keynote from Microsoft
OW2con'14 - Keynote from MicrosoftOW2con'14 - Keynote from Microsoft
OW2con'14 - Keynote from Microsoft
 
Itf ipp ch06_2012_final
Itf ipp ch06_2012_finalItf ipp ch06_2012_final
Itf ipp ch06_2012_final
 
197x 20090704 Scalaで並行プログラミング
197x 20090704 Scalaで並行プログラミング197x 20090704 Scalaで並行プログラミング
197x 20090704 Scalaで並行プログラミング
 
Square Numbers - Update November 12
Square Numbers - Update November 12Square Numbers - Update November 12
Square Numbers - Update November 12
 
OW2con'14 - OpenPaaS, the open source collaboration platform, Linagora
OW2con'14 - OpenPaaS, the open source collaboration platform, LinagoraOW2con'14 - OpenPaaS, the open source collaboration platform, Linagora
OW2con'14 - OpenPaaS, the open source collaboration platform, Linagora
 
OW2con'14- erOCCI, a scalable, model-based REST API framework
OW2con'14- erOCCI, a scalable, model-based REST API frameworkOW2con'14- erOCCI, a scalable, model-based REST API framework
OW2con'14- erOCCI, a scalable, model-based REST API framework
 
1 early britain. the celts
1  early britain. the celts1  early britain. the celts
1 early britain. the celts
 
2013 cch basic principles ch12
2013 cch basic principles ch122013 cch basic principles ch12
2013 cch basic principles ch12
 
MuseScore - Capitole du Libre 2012
MuseScore - Capitole du Libre 2012MuseScore - Capitole du Libre 2012
MuseScore - Capitole du Libre 2012
 
Chapter 3
Chapter 3Chapter 3
Chapter 3
 
To be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, ParisTo be Open Source or not to be ? OW2con’12, Paris
To be Open Source or not to be ? OW2con’12, Paris
 
프로젝트N 기획문서
프로젝트N 기획문서프로젝트N 기획문서
프로젝트N 기획문서
 
OW2con'14 - Sustainable financing of open source, an insider view, XWiki
OW2con'14 - Sustainable financing of open source, an insider view, XWikiOW2con'14 - Sustainable financing of open source, an insider view, XWiki
OW2con'14 - Sustainable financing of open source, an insider view, XWiki
 
Chapter 6
Chapter 6Chapter 6
Chapter 6
 
E-Government Portal-DAWLATI, OW2con'12, Paris
E-Government Portal-DAWLATI, OW2con'12, ParisE-Government Portal-DAWLATI, OW2con'12, Paris
E-Government Portal-DAWLATI, OW2con'12, Paris
 
Giethoon villagewithoutstreets
Giethoon villagewithoutstreetsGiethoon villagewithoutstreets
Giethoon villagewithoutstreets
 
Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...
Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...
Introduction of Trustie Software Repository & Passion-Lab Data Center, OW2con...
 

Similar to Tech talk: PHP

Introduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital WorkplaceIntroduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital Workplace
Jen Wei Lee
 
Intro to Perfect - LA presentation
Intro to Perfect - LA presentationIntro to Perfect - LA presentation
Intro to Perfect - LA presentation
Tim Taplin
 
Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development
Shean McManus
 
The i7 Framework for System-i
The i7 Framework for System-iThe i7 Framework for System-i
The i7 Framework for System-i
Ivo Jansch
 
Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHP
Eric Johnson
 
Django, What is it, Why is it cool?
Django, What is it, Why is it cool?Django, What is it, Why is it cool?
Django, What is it, Why is it cool?
Tom Brander
 
PHP Vs NodeJS for Backend Web Development.pdf
PHP Vs NodeJS for Backend Web Development.pdfPHP Vs NodeJS for Backend Web Development.pdf
PHP Vs NodeJS for Backend Web Development.pdf
SofiaCarter4
 
PHP
PHPPHP
Evolution of deploy.sh
Evolution of deploy.shEvolution of deploy.sh
Evolution of deploy.sh
Leonid Mamchenkov
 
Improve Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdfImprove Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdf
WPWeb Infotech
 
Federico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi Php In Yahoo
Federico Feroldi Php In Yahoo
Federico Feroldi
 
Php verses .net
Php verses .netPhp verses .net
Php verses .net
CBitss Technologies
 
Applied+Web+Development+[Autosaved].pptx
Applied+Web+Development+[Autosaved].pptxApplied+Web+Development+[Autosaved].pptx
Applied+Web+Development+[Autosaved].pptx
voot1
 
Webtechnologies
Webtechnologies Webtechnologies
Webtechnologies
-jyothish kumar sirigidi
 
Node.js vs PHP, What should SMBs prefer for web development.pdf
Node.js vs PHP, What should SMBs prefer for web development.pdfNode.js vs PHP, What should SMBs prefer for web development.pdf
Node.js vs PHP, What should SMBs prefer for web development.pdf
Mindfire LLC
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
arunv
 
Web technologies lesson 1
Web technologies   lesson 1Web technologies   lesson 1
Web technologies lesson 1nhepner
 
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdf
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdfTop 8 Powerful Tools Developers Use for Laravel Web Development.pdf
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdf
MoonTechnolabsPvtLtd
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ Platform
Sébastien Morel
 

Similar to Tech talk: PHP (20)

Introduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital WorkplaceIntroduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital Workplace
 
Intro to Perfect - LA presentation
Intro to Perfect - LA presentationIntro to Perfect - LA presentation
Intro to Perfect - LA presentation
 
Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development
 
Phpyahoo
PhpyahooPhpyahoo
Phpyahoo
 
The i7 Framework for System-i
The i7 Framework for System-iThe i7 Framework for System-i
The i7 Framework for System-i
 
Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHP
 
Django, What is it, Why is it cool?
Django, What is it, Why is it cool?Django, What is it, Why is it cool?
Django, What is it, Why is it cool?
 
PHP Vs NodeJS for Backend Web Development.pdf
PHP Vs NodeJS for Backend Web Development.pdfPHP Vs NodeJS for Backend Web Development.pdf
PHP Vs NodeJS for Backend Web Development.pdf
 
PHP
PHPPHP
PHP
 
Evolution of deploy.sh
Evolution of deploy.shEvolution of deploy.sh
Evolution of deploy.sh
 
Improve Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdfImprove Your Business Standards with Backend Development .pdf
Improve Your Business Standards with Backend Development .pdf
 
Federico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi Php In Yahoo
Federico Feroldi Php In Yahoo
 
Php verses .net
Php verses .netPhp verses .net
Php verses .net
 
Applied+Web+Development+[Autosaved].pptx
Applied+Web+Development+[Autosaved].pptxApplied+Web+Development+[Autosaved].pptx
Applied+Web+Development+[Autosaved].pptx
 
Webtechnologies
Webtechnologies Webtechnologies
Webtechnologies
 
Node.js vs PHP, What should SMBs prefer for web development.pdf
Node.js vs PHP, What should SMBs prefer for web development.pdfNode.js vs PHP, What should SMBs prefer for web development.pdf
Node.js vs PHP, What should SMBs prefer for web development.pdf
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
Web technologies lesson 1
Web technologies   lesson 1Web technologies   lesson 1
Web technologies lesson 1
 
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdf
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdfTop 8 Powerful Tools Developers Use for Laravel Web Development.pdf
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdf
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ Platform
 

Recently uploaded

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 

Recently uploaded (20)

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 

Tech talk: PHP

  • 2. Overview  Web Development Trends  What is PHP ?  MVC Frameworks  Mobile Web Apps  Command Line PHP  Sites Using PHP  Pros  Cons  References
  • 3. Web Development Trends  PHP  Ruby (on Rails)  Python (Django)  ASP.NET  JavaScript (Ajax, Node.js, AngularJS, Backbone.js, Ember.js etc)  Java  Perl  Scala (Play Framework)  Erlang  Clojure  Groovy/Grails etc
  • 4. What is PHP?  PHP is mainly focused on server-side scripting, so you can do anything any other CGI program can do, such as collect form data, generate dynamic page content, or send and receive cookies.  The best things in using PHP are that it is extremely simple for a newcomer, but offers many advanced features for a professional programmer.
  • 5. PHP: Hypertext Preprocessor  Development started in 1994, by Rasmus Lerdorf.  Server-side scripting language  Interpreted language  Multi-platform (Linux, *nix, Windows)  Syntax resembles C and Perl  Simpler and faster to develop in (than C and Perl or Java)  Fast, flexible and pragmatic
  • 7. Where does PHP fit ? Web Browser Internet or Intranet page Web HTTP Request Page Web page Web Server server Added function ality Added function ality Client-side “Active pages” JavaScript, VBScript, Applet, ActiveX Server-side “Dynamic pages” CGI, SSI, Server API, ASP, JSP, PHP, COM/DCOM, CORBAActive and dynamic page technology can be used together – server-side program generates customized active pages.
  • 8. Putting it all together Web-Client Web-Server DBMS Database Output SQL commands PHP HTML-Form (+JavaScript) Reply WWW Submit Data Call PHP interpreter Response Response LAN Web-Browser Database Server
  • 9. PHP – MVC Frameworks Model-View-Controller (MVC) Yii CakePHP CodeIgniter Symfony Zend Framework Kohana many others
  • 10. PHP – Mobile Web Apps  Common to use server-side PHP to develop Mobile Web Apps or Hybrid Apps  Reuse php web site backend components and logic  Enjoy the advantages of PHP  Eg. PHP Yii Framework + jQuery Mobile (or any mobile web app framework)
  • 11. Command Line PHP  What is this good for:  Parsing files to put into a database  Ideal for scripts regularly executed using cron (on *nix or Linux) or Task Scheduler (on Windows).  Anything you use a shell script or perl script to do  Variables of use:  $argc, $argv[]  $stdin, $stdout, $stderr
  • 13. Sites using PHP  Yahoo, Facebook, Google, YouTube, eBay, Flickr, Zynga, Wikipedia, Craiglist, Digg  Cisco, Oracle, Intel, Nokia, China Mobile,  Wordpress sites (CMS), Drupal sites (CMS)  etc
  • 14. PHP - Pros  Open source, completely free  Specifically designed for Web Development / Developers  Excellent documentation  Simplicity, Easy to learn, including frameworks  Largest community support  Multi-platforms  Easy deployment (just copy the files)  Easy to scale up and out  Readily available pool of talents/coders
  • 15. PHP - Pros  Rapid prototyping, fast development time  Lightweight, low overheads  Fast execution time  Silo process, loosely coupled  Highly configurable  Procedural / Object Oriented programming  Extensive libraries / modules  Support wide range of interfaces (DB, Outputs, Protocols, Caching etc)
  • 16. PHP - Cons  Best used with caching stack  Not thread-safe  Less efficient multithreading support  No strong standards of coding style  Flexible, many ways to accomplished same task  Not strongly typed, implicit conversion  Not particularly sexy  No built-in scheduler  Not good for GUI or desktop apps
  • 17. References  www.php.net  pecl.php.net  pear.php.net  www.yiiframework.com  cakephp.org  www.codeigniter.com