SlideShare une entreprise Scribd logo
1  sur  17
Télécharger pour lire hors ligne
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

Contenu connexe

Tendances

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)
 
PHP Files: An Introduction
PHP Files: An IntroductionPHP Files: An Introduction
PHP Files: An IntroductionJacques 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 IDEsDr. 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 foolAlessandro 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
 
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 revolutionAhmed 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 Practicesbotsplash.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 Drupal8DrupalDay
 
Web to App:作業系統革命 Firefox OS
Web to App:作業系統革命  Firefox OSWeb to App:作業系統革命  Firefox OS
Web to App:作業系統革命 Firefox OSVeck 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 OSPrathamesh Chavan
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development WorkflowVũ Nguyễn
 

Tendances (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
 

En vedette

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 ResumeWildi
 
Logic Circuit Project Final Presentation
Logic Circuit Project Final PresentationLogic Circuit Project Final Presentation
Logic Circuit Project Final PresentationMatthew Chang
 
OW2con'14 - Keynote from Microsoft
OW2con'14 - Keynote from MicrosoftOW2con'14 - Keynote from Microsoft
OW2con'14 - Keynote from MicrosoftOW2
 
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 12figo 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, LinagoraOW2
 
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 frameworkOW2
 
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 2012Nicolas 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, XWikiOW2
 
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, ParisOW2
 
Giethoon villagewithoutstreets
Giethoon villagewithoutstreetsGiethoon villagewithoutstreets
Giethoon villagewithoutstreetsalfcoltrane
 
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
 

En vedette (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...
 

Similaire à 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 WorkplaceJen Wei Lee
 
Intro to Perfect - LA presentation
Intro to Perfect - LA presentationIntro to Perfect - LA presentation
Intro to Perfect - LA presentationTim 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-iIvo Jansch
 
Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHPEric 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
 
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 .pdfWPWeb Infotech
 
Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!Francesco Fullone
 
Federico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi
 
Applied+Web+Development+[Autosaved].pptx
Applied+Web+Development+[Autosaved].pptxApplied+Web+Development+[Autosaved].pptx
Applied+Web+Development+[Autosaved].pptxvoot1
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Railsarunv
 
Web technologies lesson 1
Web technologies   lesson 1Web technologies   lesson 1
Web technologies lesson 1nhepner
 
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 PlatformSébastien Morel
 
Building A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooBuilding A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooDustin Whittle
 
An Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP ProgrammersAn Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP Programmersjphl
 

Similaire à 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
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 Yahoo!Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!
 
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
 
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
 
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
 
Building A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooBuilding A Platform From Open Source At Yahoo
Building A Platform From Open Source At Yahoo
 
An Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP ProgrammersAn Introduction to Websphere sMash for PHP Programmers
An Introduction to Websphere sMash for PHP Programmers
 

Dernier

Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 

Dernier (20)

Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 

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