2. Introduction to PHP
Introduction to PHP
• PHP is a server-side scripting language designed
for web development but also used as a general-
purpose programming language. As of January 2013,
PHP was installed on more than 240
million websites (39% of those sampled) and 2.1
million web servers.[Originally created by Ramses
Lerdorf in 1994,the reference implementation of PHP
is now produced by The PHP Group. While PHP
originally stood for Personal Home Page, it now
stands for PHP: Hypertext Preprocessor, a
recursive backronym.
• 2
3. Introduction to PHP
Introduction to PHP
• PHP code can be simply mixed with HTML code, or it can be
used in combination with various templating engines and web
frameworks. PHP code is usually processed by a
PHP interpreter, which is usually implemented as a web server's
native module or aCommon Gateway Interface (CGI)
executable. After the PHP code is interpreted and executed, the
web server sends resulting output to its client, usually in form of
a part of the generated web page – for example, PHP code can
generate a web page's HTML code, an image, or some other
data. PHP has also evolved to include a command-line
interface (CLI) capability and can be used
in standalonegraphical applications.
•
3
4. Introduction to PHP
4
Introduction to PHP
• PHP Hypertext Preprocessor.
– Other Names : Personal Home Page, Professional Home
Page
• Is a server side scripting language.
– Capable of generating the HTML pages
• HTML generates the web page with the static text
and images.
• However the need evolved for dynamic web based
application, mostly involving database usage.
8. Introduction to PHP
8
CLIENT
WEB
SERVER
HTTP Request
(url)
<HTML>
<?php PHP code ?>
</HTML>
Gets Page
<HTML>
<B>Hello</B>
</HTML>
Interprets the PHP code
Server response
Browser creates
the web page
Hello
9. Introduction to PHP
9
Why PHP?
• ..there are no. of server side scripting available like
ASP, SSJS, JSP…..
• PHP involves
– simplicity in scripting (..generally using the database)
– platform independence.
• PHP is
– primarily designed for web applications
– well optimized for the response times needed for web
applications
• Is an open source.
10. Introduction to PHP
10
PHP Language features
• PHP language features such as control
structures, operators, variable types, function
declaration, class/object declaration are
almost similar to any compiled or interpreted
language such as C or C++.
11. Introduction to PHP
11
PHP Data Type
• Three basic data types
– Integer
– Double
– String
• More data types
– Array
– Object
• PHP is an untyped language
– variables type can change on the fly.
12. Introduction to PHP
12
PHP Block
• PHP code block is embedded within the <?php
and ?> tags.
• When the server encounters the PHP tags it
switches from the HTML to PHP mode.
• There are four different ways to embed the
PHP code
– <?php echo(“Some PHP code”); ?>
– <? echo(“Some PHP code”); ?>
– <SCRIPT Language=‘php’> echo(“Some PHP code”); </SCRIPT>
– <% echo(“Some PHP code”); %>
13. Introduction to PHP
13
PHP Constants
• ..values that never changes
• Constants are defined in PHP by using the
define() function.
– For e.g.
define(“NCST”, “National Centre for Software Technology”)
• defined() function says whether the constant exists
or not.
14. Introduction to PHP
14
PHP Variables
• The variables in PHP are declared by
appending the $ sign to the variable name.
– For e.g
$company = “NCST”;
$sum = 10.0;
• variable’s data type is changed by the value
that is assigned to the variable.
• Type casting allows to change the data type
explicitly.
15. Introduction to PHP
15
PHP Variables (cont.)
• Rich set of functions for working with
variable.
– For e.g
• gettype, settype, isset, unset, is_int, intval etc etc
16. Introduction to PHP
16
PHP Operators
• All the operators such as arithmetic,
assignment, Comparison, and logical operators
are similar to the operators in C and C++.
• In PHP the string concatenation operator is
denoted by ‘.’.
– For e.g.
• $name = “My name is”.$myname;
17. Introduction to PHP
17
PHP Statements
• IF statement
if (<condition>) {
//php code goes here
}
else {
//php code goes here
}
• Alternative Syntax
if(<condition>) :
//html code goes here
else :
//html code goes here
endif;
18. Introduction to PHP
18
PHP Statements (cont.)
• For loop
for($i=0;$i < 10;$++i) {
echo(“the value is :”. $i);
}
– Alternative Syntax
for($i=0;$i < 10;$++i) :
// html code goes here
endfor;
• While loop
• Do-While loop
19. Introduction to PHP
19
Functions
• Function declaration in PHP
function my_func(<parameters>) {
//do something in the function
}
– for e.g.
function sayHello() {
echo(“<B>hello amrish<B><BR>”);
}
20. Introduction to PHP
20
Functions (cont.)
• Assigning functions to the variables
– for e.g
• $hello = “my_func”;
• to invoke the function my_func() through the variable
$hello( );
• When an argument is to be passed by
reference, an ampersand (&) is placed before
the parameter name
– for e.g.
my_func(&$my_refvar);
21. Introduction to PHP
21
Arrays
• ..contains value set
• each element has a value, data stored in the
element.
• And has a key by which the element can be
referred to.
22. Introduction to PHP
22
Initializing Arrays
• No of ways to initialize the array.
– For e.g.
• $ncststaff[] = “amrish”;
$ncststaff[] = “murali”;
$ncststaff[] = “narayan”;
• $ncststaff[123] = “amrish”;
$ncststaff[122] = “murali”;
$ncststaff[121] = “narayan”;
• $ncststaff = array (“amrish”, “murali”, “narayan”);
– to change the indices of the array use => operator.
23. Introduction to PHP
23
Accessing the Array Elements
• The elements in the array can be accessed by
using the list and each constructs
– for e.g
while(list($key,$value) = each(countries))
echo(“$value<BR>n”);
– current(<arrayname>) gives the current value
being accessed. key(<arrayname>) gives the index
of the current element that is being accessed.
– prev(<arrayname>) gives the previous element.
– next(<arrayname>) gives the next element.
24. Introduction to PHP
24
Accessing the Array Elements (cont.)
– Array_walk(<arrayname>,<function_name>)
• function_name is the function that is written for every
member of an array.
• For e.g
$ncststaff = array (“amrish”, “murali”, “narayan”);
array_walk ($ncststaff, printstaff);
// function to print each element of the array
function printstaff($names) {
echo “<B>$names</B><BR>n”;
}
25. Introduction to PHP
25
Arrays (cont.)
• $ncststaff = array (“dake” => array(“amrish”, “lakshana”, “venkat”),
“spc” => array(“narayan”, “murali”,“prasad”));
–creates a two dimensional array.
• Sorting Functions
– sort() : sorts the elements in the numeric and
alphabetical order.
– rsort() : sorts the elements in the reverse order.
– asort() : sorts the elements in the array without
changing the indices.
– ksort() : sorts the arrays by key.
26. Introduction to PHP
26
Classes
• Class is a template of an object and includes
the properties and methods that describe an
object and behavior.
• Class in PHP is defined using class statement.
27. Introduction to PHP
27
Classes (cont.)
• For e.g
<?
class company {
// define the properties
var $companyname;
// define the methods
function company($cname) {
$this->companyname = $cname;
}
function getnames($idcode) {
//return the name of the employee for the required idcode
}
}
?>
28. Introduction to PHP
28
PHP Richness
• PHP comes with myriad of options i.e.
supports several APIs and interfaces to other
programming tools such as
– Database connectivity.
– LDAP
– XML
– Mail protocols such as IMAP, SMTP
– Image functions
etc….
29. Introduction to PHP
29
Support for Regular Expressions
• Not pretty things to look at and work with.
– E.g. ^.+@.+..+$
• PHP takes over the headache from the
programmers for explicitly coding for pattern
matching.
• Functions:
– ereg() and eregi()
– ereg_replace() & eregi_replace()
– split()
30. Introduction to PHP
30
Image Generation & Manipulation
• PHP offers powerful set of functions for
generating and manipulating the images.
– Rendering regular geometric figures, modifying
images
– manipulate text, font and color and even the pixels
in the image.
• ….creating the images on the fly.
31. Introduction to PHP
31
Image Generation & Manipulation
(cont.)
• PHP uses the GD library for the most of the image
functionality that it offers.
• GD library is used for generating the two-dimensional
graphics.
• PHP API’s provides us with functions to:
– Create, delete, resize and modify images.
– Draw basic geometric figures
– Manipulate text and fonts
– Manipulate colors
– Interlace and manipulate pixels
– Handle PostScript files
32. Introduction to PHP
32
Mailing functions
• Sending E-Mails
– Mail()
• Used to send simple text messages.
• Depends on the local mail delivery system.
– Using SMTP
• Accepts the e-mail for every recipient and goes through trouble
of delivering the e-mails.
• Receiving E-Mails
– PHP works out well with the IMAP protocol.
– Rich set of support functions
• Imap_open, impa_delete, imap_close, imap_mail_copy,
imap_mail_move etc.
33. Introduction to PHP
33
PHP-Database Connectivity
• Supports APIs for accessing large number of
databases.
• ODBC is a standard API for accessing a
database that has PHP support.
34. Introduction to PHP
34
PHP-Database Connectivity
• Some of Oracle 8.x functions.
– OCILogon
– OCILogoff
– OCIParse
– OCIFetch; OCIFetchInto; OCIFetchStatement
– OCIExecute
– OCIFreeStatement
35. Introduction to PHP
35
LDAP Support in PHP
• PHP provides LDAP API’s that allows the
programmers to create LDAP clients; by
providing transparent access to backend LDAP
directory servers.
– For e.g.
• Web based e-mail client.
• Telephone Directory.
36. Introduction to PHP
36
XML Support in PHP
• PHP supports a set of functions that can be
used for writing PHP-based XML applications.
• These functions are used for parsing well
formed XML document.