SlideShare a Scribd company logo
Introduction to PHP
PHP Origins
Rasmus Lerdorf (born Greenland, ed Canada)

PHP originally abbreviation for ‘Personal Home Pages’,
  now ‘PHP Hypertext Processor’

Other key developers: Zeev Surashi and Andi Gutmans
  (Israel)

Open Source

PHP version 4.4.3 current at UWE
Due to upgrade to PHP 5
Scripting languages
• A scripting language is:
   –   often evolved not designed
   –   cross-platform since interpreter is easy to port
   –   designed to support a specific task – PHP -> Web support
   –   un-typed variables (but values are typed)
   –   implicit variable declaration
   –   implicit type conversion
   –   stored only as script files
   –   compiled on demand
   –   may run on the server (PHP) or the client (Javascript)
• What design and development are involved in using a
  scripting language like PHP for development in place of
  a compiled language (Java in JSP, .NET)?
PHP details
• Procedural language
   – Compare with Javascript which is event-driven
• C-like syntax - { } ;
• Extensive Function Library
• Good Web-server integration
   – Script embedded in HTML
   – Easy access to form data and output of HTML pages
• Not fully object-oriented
   – Java is fully object oriented – all functions have to be
     in a class
   – In PHP, classes are additional but quite simple to use
PHP and HTML
• HTML-embedded
 – PHP scripts are essentially HTML pages with
   the occasional section of PHP script.
 – PHP script is enclosed in the tag pair:
   •   <?php print date(“H:I”) ?>
C-like language
•   Free format - white space is ignored
•   Statements are terminated by semi-colon ;
•   Statements grouped by { … }
•   Comments begin with // or a set of comments /* */
•   Assignment is ‘=’: $a=6
•   Relational operators are ,< , > == ( not a single equal)
•   Control structures include if (cond) {..} else { }, while (cond) { .. } ,
    for(sstartcond; increment; endcond) { }
•   Arrays are accessed with [ ] : $x[4] is the 5th element of the array
    $x – indexes start at 0
•   Associative Arrays (hash array in Perl, dictionary in Java) are
    accessed in the same way: $y[“fred”]
•   Functions are called with the name followed by arguments in a fixed
    order enclosed in ( ) : substr(“fred”,0,2)
•   Case sensitive - $fred is a different variable to $FRED
Function library
• Basic tasks
   –   String Handling
   –   Mathematics – random numbers, trig functions..
   –   Regular Expressions
   –   Date and time handling
   –   File Input and Output
• And more specific functions for-
   – Database interaction –
        • MySQL, Oracle, Postgres, Sybase, MSSQL ..
   –   Encryption
   –   Text translation
   –   Spell-checking
   –   Image creation
   –   XML
String Handling
• String literals (constants) enclosed in double quotes “ ”
  or single quotes ‘ ’
• Within “”, variables are replaced by their value: – called
  variable interpolation. “My name is $name, I think”
• Within single quoted strings, interpolation doesn’t occur
• Strings are concatenated (joined end to end) with the
  dot operator “key”.”board” == “keyboard”
• Standard functions exist: strlen(), substr() etc
• Values of other types can be easily converted to and
  from strings – numbers implicitly converted to strings in a
  string context.
• Regular expressions be used for complex pattern
  matching.
3(+1) Tier architecture
 voice
             DHTML

  touch       Browser       HTTP                         SQL
           (IE, FireFox,                PHP script               Database
              Opera)
                                      Web Server                 Database
  vision                   HTML       (Apache, IIS)     tables
                                                                  Server
             Desktop
           (PC or MAC)


SMS
                                                      Web Service
           SMS system
                              Client application



                                           Remote services
Learning PHP
• Start with just the basics, installing a script
  to output an HTML page
• Understand how PHP supports interaction
  with the Browser or other clients
• Understand how PHP supports integration
  with databases – MySQL
• Understand how PHP supports integration
  with other applications – Web services

More Related Content

Viewers also liked

Actividad 1 de donde estan mis valores
Actividad 1 de donde estan mis valoresActividad 1 de donde estan mis valores
Actividad 1 de donde estan mis valores
diegosena112
 
Cauja carmen manejo de windows
Cauja carmen manejo de windowsCauja carmen manejo de windows
Cauja carmen manejo de windows
Karina Cauja
 
La lecture publique : une responsabilité partagée
La lecture publique : une responsabilité partagéeLa lecture publique : une responsabilité partagée
La lecture publique : une responsabilité partagée
Dominique Lahary
 
Presentación1 frances
Presentación1 francesPresentación1 frances
Presentación1 francesAngel Caelum
 
5 lista de acontecimientos
5 lista de acontecimientos5 lista de acontecimientos
5 lista de acontecimientos
Raul Ivan Quispe Tancara
 
金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等
金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等
金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等虛空 鄭
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
Baes concurso do antroido 2014
Baes concurso do antroido 2014Baes concurso do antroido 2014
Baes concurso do antroido 2014odesvanmarita
 
Memoria actividades cs 2014
Memoria actividades cs 2014Memoria actividades cs 2014
Memoria actividades cs 2014
odesvanmarita
 
Ficha de Inscrição | Application Form
Ficha de Inscrição | Application Form Ficha de Inscrição | Application Form
Ficha de Inscrição | Application Form
Tarumba
 
Le Parc National des Kundelungu
Le Parc National des KundelunguLe Parc National des Kundelungu
Le Parc National des Kundelungucoinculture
 
Repàs TEMA 10 - 11
Repàs TEMA 10 - 11Repàs TEMA 10 - 11
Repàs TEMA 10 - 11
Carles
 
Skills audit.
Skills audit.Skills audit.
Skills audit.
vintageeeeeeee_e
 
Autobiografía
AutobiografíaAutobiografía
Autobiografía
usagui84
 
Alyssa
AlyssaAlyssa
Alyssa
ijchristie
 

Viewers also liked (16)

Actividad 1 de donde estan mis valores
Actividad 1 de donde estan mis valoresActividad 1 de donde estan mis valores
Actividad 1 de donde estan mis valores
 
Cauja carmen manejo de windows
Cauja carmen manejo de windowsCauja carmen manejo de windows
Cauja carmen manejo de windows
 
La lecture publique : une responsabilité partagée
La lecture publique : une responsabilité partagéeLa lecture publique : une responsabilité partagée
La lecture publique : une responsabilité partagée
 
Presentación1 frances
Presentación1 francesPresentación1 frances
Presentación1 frances
 
5 lista de acontecimientos
5 lista de acontecimientos5 lista de acontecimientos
5 lista de acontecimientos
 
金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等
金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等
金雞獨立每天1分鐘 -可改善高血糖, 高血壓,預防痛風等
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
Baes concurso do antroido 2014
Baes concurso do antroido 2014Baes concurso do antroido 2014
Baes concurso do antroido 2014
 
Memoria actividades cs 2014
Memoria actividades cs 2014Memoria actividades cs 2014
Memoria actividades cs 2014
 
Ficha de Inscrição | Application Form
Ficha de Inscrição | Application Form Ficha de Inscrição | Application Form
Ficha de Inscrição | Application Form
 
звёздный час
звёздный часзвёздный час
звёздный час
 
Le Parc National des Kundelungu
Le Parc National des KundelunguLe Parc National des Kundelungu
Le Parc National des Kundelungu
 
Repàs TEMA 10 - 11
Repàs TEMA 10 - 11Repàs TEMA 10 - 11
Repàs TEMA 10 - 11
 
Skills audit.
Skills audit.Skills audit.
Skills audit.
 
Autobiografía
AutobiografíaAutobiografía
Autobiografía
 
Alyssa
AlyssaAlyssa
Alyssa
 

More from truptitasol

IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
truptitasol
 
345345
345345345345
345345
truptitasol
 
sdfsdfsdf
sdfsdfsdfsdfsdfsdf
sdfsdfsdf
truptitasol
 
sdfsdfsdf
sdfsdfsdfsdfsdfsdf
sdfsdfsdf
truptitasol
 
sdfsdfsdf
sdfsdfsdfsdfsdfsdf
sdfsdfsdf
truptitasol
 
hgfgf
hgfgfhgfgf
test
testtest
test
testtest
test
testtest

More from truptitasol (20)

IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
IntroductiontoPHP.ppt
IntroductiontoPHP.pptIntroductiontoPHP.ppt
IntroductiontoPHP.ppt
 
345345
345345345345
345345
 
sdfsdfsdf
sdfsdfsdfsdfsdfsdf
sdfsdfsdf
 
sdfsdfsdf
sdfsdfsdfsdfsdfsdf
sdfsdfsdf
 
sdfsdfsdf
sdfsdfsdfsdfsdfsdf
sdfsdfsdf
 
hgfgf
hgfgfhgfgf
hgfgf
 
test
testtest
test
 
test
testtest
test
 
test
testtest
test
 

ssfsd fsdf ds f

  • 2. PHP Origins Rasmus Lerdorf (born Greenland, ed Canada) PHP originally abbreviation for ‘Personal Home Pages’, now ‘PHP Hypertext Processor’ Other key developers: Zeev Surashi and Andi Gutmans (Israel) Open Source PHP version 4.4.3 current at UWE Due to upgrade to PHP 5
  • 3. Scripting languages • A scripting language is: – often evolved not designed – cross-platform since interpreter is easy to port – designed to support a specific task – PHP -> Web support – un-typed variables (but values are typed) – implicit variable declaration – implicit type conversion – stored only as script files – compiled on demand – may run on the server (PHP) or the client (Javascript) • What design and development are involved in using a scripting language like PHP for development in place of a compiled language (Java in JSP, .NET)?
  • 4. PHP details • Procedural language – Compare with Javascript which is event-driven • C-like syntax - { } ; • Extensive Function Library • Good Web-server integration – Script embedded in HTML – Easy access to form data and output of HTML pages • Not fully object-oriented – Java is fully object oriented – all functions have to be in a class – In PHP, classes are additional but quite simple to use
  • 5. PHP and HTML • HTML-embedded – PHP scripts are essentially HTML pages with the occasional section of PHP script. – PHP script is enclosed in the tag pair: • <?php print date(“H:I”) ?>
  • 6. C-like language • Free format - white space is ignored • Statements are terminated by semi-colon ; • Statements grouped by { … } • Comments begin with // or a set of comments /* */ • Assignment is ‘=’: $a=6 • Relational operators are ,< , > == ( not a single equal) • Control structures include if (cond) {..} else { }, while (cond) { .. } , for(sstartcond; increment; endcond) { } • Arrays are accessed with [ ] : $x[4] is the 5th element of the array $x – indexes start at 0 • Associative Arrays (hash array in Perl, dictionary in Java) are accessed in the same way: $y[“fred”] • Functions are called with the name followed by arguments in a fixed order enclosed in ( ) : substr(“fred”,0,2) • Case sensitive - $fred is a different variable to $FRED
  • 7. Function library • Basic tasks – String Handling – Mathematics – random numbers, trig functions.. – Regular Expressions – Date and time handling – File Input and Output • And more specific functions for- – Database interaction – • MySQL, Oracle, Postgres, Sybase, MSSQL .. – Encryption – Text translation – Spell-checking – Image creation – XML
  • 8. String Handling • String literals (constants) enclosed in double quotes “ ” or single quotes ‘ ’ • Within “”, variables are replaced by their value: – called variable interpolation. “My name is $name, I think” • Within single quoted strings, interpolation doesn’t occur • Strings are concatenated (joined end to end) with the dot operator “key”.”board” == “keyboard” • Standard functions exist: strlen(), substr() etc • Values of other types can be easily converted to and from strings – numbers implicitly converted to strings in a string context. • Regular expressions be used for complex pattern matching.
  • 9. 3(+1) Tier architecture voice DHTML touch Browser HTTP SQL (IE, FireFox, PHP script Database Opera) Web Server Database vision HTML (Apache, IIS) tables Server Desktop (PC or MAC) SMS Web Service SMS system Client application Remote services
  • 10. Learning PHP • Start with just the basics, installing a script to output an HTML page • Understand how PHP supports interaction with the Browser or other clients • Understand how PHP supports integration with databases – MySQL • Understand how PHP supports integration with other applications – Web services