Introduction to PHP PHP Origins Rasmus Lerdorf born
![Introduction to PHP Introduction to PHP](https://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-1.jpg)
Introduction to PHP
![PHP Origins Rasmus Lerdorf (born Greenland, ed Canada) PHP originally abbreviation for ‘Personal Home PHP Origins Rasmus Lerdorf (born Greenland, ed Canada) PHP originally abbreviation for ‘Personal Home](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-2.jpg)
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 Scripting languages • A scripting language is: – – – – – often evolved](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-3.jpg)
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)?
![What is PHP? • PHP stands for PHP: Hypertext Preprocessor • PHP is a What is PHP? • PHP stands for PHP: Hypertext Preprocessor • PHP is a](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-4.jpg)
What is PHP? • PHP stands for PHP: Hypertext Preprocessor • PHP is a server-side scripting language, like ASP • PHP scripts are executed on the server • PHP supports many databases (My. SQL, Informix, Oracle, Sybase, Solid, Postgre. SQL, Generic ODBC, etc. ) • PHP is an open source software • PHP is free to download and use
![PHP files • PHP files have a file extension of ". php", ". php PHP files • PHP files have a file extension of ". php", ". php](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-5.jpg)
PHP files • PHP files have a file extension of ". php", ". php 3", or ". phtml"
![Why PHP? • PHP runs on different platforms (Windows, Linux, Unix, etc. ) • Why PHP? • PHP runs on different platforms (Windows, Linux, Unix, etc. ) •](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-6.jpg)
Why PHP? • PHP runs on different platforms (Windows, Linux, Unix, etc. ) • PHP is compatible with almost all servers used today (Apache, IIS, etc. ) • PHP is FREE to download from the official PHP resource: www. php. net • PHP is easy to learn and runs efficiently on the server side
![Where to Start? • To get access to a web server with PHP support, Where to Start? • To get access to a web server with PHP support,](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-7.jpg)
Where to Start? • To get access to a web server with PHP support, you can: • Install Apache (or IIS) on your own server, install PHP, and My. SQL • Or find a web hosting plan with PHP and My. SQL support
![PHP and HTML • HTML-embedded – PHP scripts are essentially HTML pages with the PHP and HTML • HTML-embedded – PHP scripts are essentially HTML pages with the](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-8.jpg)
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 C-like language • • • Free format - white space is ignored Statements are](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-9.jpg)
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 5 th 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, Function library • Basic tasks – – – String Handling Mathematics – random numbers,](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-10.jpg)
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 – • My. SQL, Oracle, Postgres, Sybase, MSSQL. . – – – Encryption Text translation Spell-checking Image creation XML
![String Handling • String literals (constants) enclosed in double quotes “ ” or single String Handling • String literals (constants) enclosed in double quotes “ ” or single](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-11.jpg)
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.
![Learning PHP • Start with just the basics, installing a script to output an Learning PHP • Start with just the basics, installing a script to output an](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-12.jpg)
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 – My. SQL • Understand how PHP supports integration with other applications – Web services
![Hello world • <html><head> <title>My First PHP Page</title> </head> <body> <? php echo "Hello Hello world • <html><head> <title>My First PHP Page</title> </head> <body> <? php echo "Hello](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-13.jpg)
Hello world • <html><head> <title>My First PHP Page</title> </head> <body> <? php echo "Hello World!"; ? > </body></html>
![Easy to Use Code is embedded into HTML. The PHP code is enclosed in Easy to Use Code is embedded into HTML. The PHP code is enclosed in](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-14.jpg)
Easy to Use Code is embedded into HTML. The PHP code is enclosed in special start and end tags that allow you to jump into and out of "PHP mode". <html> <head> <title>Example</title> </head> <body> <? php echo "Hi, I'm a PHP script!"; ? > </body> </html>
![<? php $today_dayofweek = date(“w”); if ($today_dayofweek == 4){ echo “Today is Thursday!”; } <? php $today_dayofweek = date(“w”); if ($today_dayofweek == 4){ echo “Today is Thursday!”; }](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-15.jpg)
<? php $today_dayofweek = date(“w”); if ($today_dayofweek == 4){ echo “Today is Thursday!”; } else{ echo “Today is not Thursday. ”; } ? >
![Page counter <? php $COUNTER_FILE = “webcounter. txt"; if (file_exists($COUNTER_FILE)) { $fp = fopen("$COUNTER_FILE", Page counter <? php $COUNTER_FILE = “webcounter. txt"; if (file_exists($COUNTER_FILE)) { $fp = fopen("$COUNTER_FILE",](http://slidetodoc.com/presentation_image_h2/52d0b124625f8328ac1a8e87fbf85a40/image-16.jpg)
Page counter <? php $COUNTER_FILE = “webcounter. txt"; if (file_exists($COUNTER_FILE)) { $fp = fopen("$COUNTER_FILE", "r+"); flock($fp, 1); $hits = fgets($fp, 4096); $hits += 1; fseek($fp, 0); fputs($fp, $hits); flock($fp, 3); fclose($fp); } ? >
- Slides: 16