SlideShare uma empresa Scribd logo
1 de 55
PHP & Framework
Name:-Adarsh Bhatt
Contact:-ambhatt23@yahoo.com
9408374479
Index:-
‱ Overview of Open Source Software.
‱ Widely Used Open Source Software.
‱ Difference between Open Source Software and Close Source
Software.
‱ Pros and Cons of OSS.
‱ Background Information of PHP.
‱ Using variables
‱ operators & expressions
‱ Conditional Statements :
‱ if statement
‱ switch statement
‱ Looping Statements:
‱ for loop
‱ while loop
‱ do..while loop
‱ foreach loop
‱ Functions & Arrays in PHP
‱ PHP functions
‱ Creating arrays
‱ Regular Expressions
‱ PHP and Database
‱ Storage Types
‱ PHP with MySQL.
‱ Deal with Database.
‱ Manipulation with tables using PHP.
‱ Include(),include_once().
‱ Require(),require_once().
‱ Working with User Data and Error Handling.
‱ Cookie
‱ Session
‱ Error Handling
‱ Types of error
‱ Object Oriented Programming with PHP.
‱ Class, Constructor, Destructure
‱ Inheritance
‱ Magic Methods.
‱ Overview of PHP Framework.
‱ Popular PHP Framework.
‱ WordPpress, Magento, Opencart, Drupal, Zoomla etc.
Overview of Open Source.
Open-source software (OSS) is computer software
that is available in source code form: the source code
and certain other rights normally reserved for copyright
holders are provided under a software license that
permits users to study, change, improve and at times
also to distribute the software.
Open Source is a certification standard issued by the
Open Source Initiative (OSI) that indicates that the
source code of a computer program is made available
free of charge to the general public.
For an Open Source Software to be an "OSI Certified" a product must
meet the following criteria:
◩ The author or holder of the license of the source code cannot collect
royalties on the distribution of the program.
◩ The distributed program must make the source code accessible to the
user.
◩ The author must allow modifications and derivations of the work under
the program's original name.
Widely used open source products
Linux Kernel (Operating System)
Apache (Web Server)
GNOME, KDE (Desktop Environment)
MySQL (Database emphasizing speed)
Postgre SQL ( Database emphasizing
functionality)
PHP(Server-side scripting)
Open Office.org ( multi platform and multi
lingual office suite )
Filezilla (fast & reliable FTP client)
Pant.net(Free image editing software)
Open Source Software vs Close
Source Software
Term Open Source Closed Source
Cost ‱Open source software may
be free. If you have in-
house capability for
implementation, training
then it is the best option.
Otherwise you need to pay
for it.
‱Open source software
requires a certain level of
technical expertise in order
to manage content.
‱Open source software
providers are increasingly
charging for add-ons,
additional services and
integration.
‱The cost of proprietary
software will vary from a few
thousand to a few
hundred thousand dollars,
depending on the complexity of
the system
required.
‱This cost is made up of a base
fee for software, integration
and
services and annual
licensing/support fees.
Term Open Source Closed Source
Innovation Open source software
enables innovation by
providing users with the
freedom and flexibility to
adapt the software to suit,
without restriction.
Proprietary software providers
do not allow users to view or
alter the source
code. While this may be
viewed as a disadvantage to
some, it ensures the
security and reliability of the
software.
Usability It is developer-centric.
Requires system
administration expertise.
No availability of the proper
documentation of the system
is available.
Proprietary software generally
employs expert usability
testing, and as the
software is normally aimed at a
more targeted audience
Term Open Source Closed Source
Services &
Support
‱Service is one of the key
issues regarding open source
software. Open source
software relies on its online
community network to deliver
support via forums
and blogs.
‱These communities cannot
guarantee the high level of
responsive service and support
proprietary software can offer.
‱Proprietary software providers
offer ongoing support to users,
a key selling point for users
without technical expertise.
‱Service is one of the main
reasons users choose
proprietary software, many
proprietary software providers
compete on service ,
increasing the bargaining
power of buyers and thereby
increasing customer service
levels among providers.
‱Term ‱Open Source ‱Closed Source
Security ‱Open source software is
not developed in a
controlled environment.
‱While development they
often have a
oconcentrated dev. team,
oindividuals all over the
world
who may not work on the
software for the duration of
its developing lifetime.
This lack of continuity and
common direction can lead
to barriers to effective
communication surrounding
the software.
‱Proprietary software is
viewed as more secure
because it is developed in a
controlled environment by a
concentrated team with a
common direction.
Pros and Cons of OSS
Pros of OSS:-
◩ Helped to produce reliable, high quality
software quickly and inexpensively.
◩ thousands of independent programmers
testing and fixing bugs of the software.
◩ From a developer’s point of view, open
source technologies provide a platform on
which to build custom solutions.
‱ Cons of OSS
◩ In terms of security, open source may allow
hackers to know about the weaknesses or
loopholes of the software more easily than
closed-source software.
◩ open source development process may not be
well defined and the stages in the development
process, such as system testing and
documentation may be ignored.
◩ It is also difficult to design a commercially sound
business model around the open source
paradigm.
◩ Anyone can develop competing product because
its Open Source.
◩ Almost everything in open source is viewable by
other developers. If a developer makes a major
mistake, it can become public information and
Background Information of
PHPPHP stands for “Hypertext Preprocessor”.
It is widely used Open source, general purpose scripting language
for web development & can be embedded into HTML.
Hypertext preprocessor is an interpreter of PHP code created to
run successfully on web servers.The interpreter processes PHP
code spec invoked by web server & finally dispatches HTML code
to a browser.
PHP is a server-side scripting language which means that PHP
scripts or programs usually run on the web server.
PHP Script is processed by PHP Engine each time when it runs.
PHP Syntax is based on C. So it is easy for C Programmer to
learn & work in PHP.
PHP was created by Rasmus Lerdorf in 1994, a developer of
PERL/CGI Script.
Version 1 : (1994)
◩ PHP started out with the set of simple tools coded in C
language to replace Perl script and it was used on his
Personal Home Page (so acronym - PHP).
Version 2 : (1995)
◩ First popular version of PHP.
Version 3 : (1998)
◩ Developers were able to write their own modules for
language, adding functionality to its core.
Version 4 : (2000)
◩ Important change made to PHP 4 was switching to Zend
Engine, created by Zend company found by Zeev Suraski
and Andi Gutmans.
◩ PHP started running on:
Apache Web Server
Microsoft’s IIS
Zeus
AOLServer & many more Web Servers.
Version 5 (2004)
◩ It focused on language maturity & offered a lots of new
functionalities that had been missing in previous
versions.
Cont

Cont

PHP 6 :- Currently available as a developer snapshot which can be
downloaded and tried out.
It is planning to offer the following :-
Improved Unicode Support
Namespaces, SOAP, XML.
Benefits of running PHP As a Server Side
Script
◩ PHP Script is always invisible to client browser, as Web Server sends only
output of PHP Script to client browser, not script only.
◩ PHP Scripts are browser neutral.
Drawbacks in running PHP as a Server – Side
Script
◩ PHP consumes lots of web server resources
because everything is executed on Web Server.
◩ With many concurrent requests & large complex
scripts, the server might not be able to respond
smoothly.
◩ PHP 5.5.7 is a latest version release on 12th
december,2013.
◩ PHP 5.6.0 alpha1 released on 23rd Jan,2014 but
it is in development preview mode.
What is a PHP
file?PHP File is an ASCII file created using any editor
like Notepad, Dreamviewer, etc. and stored on
HDD.
The file contains mix of HTML & PHP.
PHP files may contain text, HTML tags & scripts.
After PHP files is processed, output is returned as plain
HTML.
PHP files usually have .PHP extension.
PHP runs on different OS platforms seamlessly, being
interpreted scripting language.
PHP is compatible with almost all Web Servers.
PHP is free to download from official PHP Resource.
PHP is easy to learn & runs efficiently on any
compatible Web Server.
Internal Structure of PHP
Database
Webpage
w
e
b
s
e
r
v
e
r
Function Modules InterfaceWeb
Server
Interface
Runtime
Compiler
Zend Engine
Executor
Web Server Software
Modules
php
MySQL Oracle ODBC XML PDO ...
Variables are identifiers which point to
memory location in which data are
stored.
Variables in PHP are weakly/loosely
typed which means when a variable is
being defined their data type is not
declared prior to use.
Variables can change its type
depending on value being assigned as
often needed.
Variables
Variable name should begin with dollar
sign.
First character after dollar sign should be
letter or an underscore.
Remaining characters in a variable name
can be letters, characters, or underscore
without any fixed limit.
Following characters are not allowed in
variable name :- *, +, #, @, -,&,ÂŁ.
Variables in PHP are case-sensitive.
Naming Rules for
variables
As it allows to convert variables data-type
automatically depending on the content
in the variable.
It is beneficial as it makes variable very
flexible & same variable can be used at
several different situations.
It is disadvantageous as , if you pass
around data accidentally of wrong type it
won’t inform you about it.
To know variable datatype use
gettype($var) function.e.g
PHP is loosely-typed
language
DataType:
- PHP has several different types of
variables.
All holds specific class/type of information.
PHP has 8 basic data types which are
categorized into 3 categories :-
1. Scalar Datatype
2. Compound Datatype
3. Special Datatype
Scalar Data
Type:-Scalar data means data that contains
only a single value.
Data type Description
Integer -Stores whole numbers either +ve or – ve.
-If value assigned is out of the range it is
converted to float.
Float - Store floating point numbers as well as higher
integers.
String - Stores sequence of characters terminated by
NULL.
Boolean -It holds true or false.
-Internally it holds integer value
- 0 for false
- rest values for true.
Compound Data
Type
Compound data is data that can
contain more than one variable.
Data type Description
Array -Ordered map
-It holds multiple values.
Object -They have multiple values within it.
-They have their own functions for accessing and/ or
manipulating its data.
Special Data
typePHP supports two special data types which have a specific
meaning.
Data types Description
Resource Contains a reference to an external resource, such as
file or database.
It can be used in same manner as we use another
variables but only difference is it should be freed up
when not required.
Null Contains null as a value. Explicitly do not contain any
value.
Conditional Statements
if statement
switch statement
goto statement
If statement
Simple if
if(test-expr)
{
True part
}
statement
If...else statement
if(test-expr)
{
True part
}
else
{
False part
}
Nested if statement
if(test-exp 1)
{
if(test-exp 2)
{
true 1 & 2
}
else
{
false 2
}
}
else
{
false part all
}
else if ladder :-
if(test-exp 1)
statement -1;
else if(test-exp 2)
statement – 2;
else if(test-exp 3)
statement – 3;
.
.
.
else
false statement
switch statement :-
switch(ch)
{
case value1:
statement 1;break;
case value2:
statement 2;break;
case value3:
statement 3; break;
.
.
.
default :
statement-false; break;
}
Case value can be of any data type or
even any condition.
We can use break and continue
interchangeable.
Default can be placed anywhere in
switch.
goto statement
The goto operator can be used to jump
to another section in the program. The
target point is specified by a label
followed by a colon, and the instruction is
given as goto followed by the desired
target label.
The target label must be within the same
file and context, meaning that you cannot
jump out of a function or method, nor can
you jump into one.
You also cannot jump into any sort of
loop or switch structure.
goto statement
Forward Jump :-
<?php
goto label;
statement -1
label:
statement -2
?>
Example :
<?php
goto a;
echo 'Foo‘;
a:
echo 'Bar';
?>
Backward Jump :-
<?php
label:
statement -2
goto label;
statement -1
?>
Example :
<?php
a:
echo 'Bar';
goto a;
echo 'Foo';
?>
Loo
p
while loop
while (expr)
statement;
while (expr):
statement
...
endwhile;
do..while loop :-
do{
statements;
}while(expr);
for loop :-
for(intialization; condition;
incr/decr)
{
statement;
}
do..while loop is executed at least once whereas while and for loop
executes only when condition is satisfied.
Foreach Loop
The foreach construct provides an easy way to iterate
over arrays.
foreach works only on arrays and objects.
foreach will issue an error when you try to use it on a
variable with a different data type or an uninitialized
variable.
Syntax : 1 foreach (array_expression as $value)
statement // indexed array
Syntax : 2 foreach (array_expression as $key => $value)
statement // associative array
When foreach first starts executing, the internal array
pointer is automatically reset to the first element of the
array.Indexed Array :
<?php
$array = array(1,2,3,4);
foreach($array as $val) {
print $val; }
?>
Associative Array :
<?php
$arr = array(1=>’ABC’,2=>’PQR’);
foreach ($arr as $key => $val) {
print "$key = $valn";
}
?>
PHP Super
Globals
Super Globals are variables that are
automatically available throughout all
program code in all scopes.
These variables do not require
declaration and then too they can be
accessed.
Super global variables provide :-
◩ Useful information about the environment.
◩ Allow access to HTML form variables or
parameters.
◩ Access to cookies stored on a client.
◩ Keeping track of sessions and file uploads.
Name Functionality
$GLOBALS
Contains all global variables in your script, including other
super globals.
This is not generally recommended for use, unless you
are, for some reason, not sure where a variable will be
stored.
$_GET
Contains all variables sent via a HTTP GET request. That
is, sent by way of the URL.
$_POST Contains all variables sent via a HTTP POST request.
$_FILES Contains all variables sent via a HTTP POST file upload.
$_COOKIE Contains all variables sent via HTTP cookies.
$_SESSION Contains all variables stored in a user's session.
$_SERVER
Contains all variables set by the web server you are
using, or other sources that directly relate to the
execution of your script.
Name Functionality
$_REQUEST
Contains all variables sent via HTTP GET, HTTP POST,
and HTTP cookies. This is basically the equivalent of
combining $_GET, $_POST, and $_COOKIE, and is less
dangerous than using $GLOBALS. However, as it does
contain all variables from untrusted sources (that is, your
visitors), you should still try to steer clear unless you
have very good reason to use it.
$_ENV
Contains all environment variables set by your system or
shell for the script.
Array
An array in PHP is actually an ordered map. A
map is a type that associates values to keys.
Syntax to specify array with array() :-
array( key => value , ... )
key may only be an integer or string
value may be any value of any type
An array can hold all your variable values
under a single name. And you can access the
values by referring to the array name and
index of element.
Each element in the array has its own index
so that it can be easily accessed.
Types of
Array
There are two kind of arrays:
1. Indexed array - An array with a numeric index beginning with 0.
Indexed arrays are used when you identify things by their position.
2. Associative array - An array where each ID key is associated
with a value. Associative arrays have strings as keys and behave
more like two-column tables. The first column is the key, which is
used to access the value.
‱ PHP internally stores array as associative array.
Assigning elements to array using array():
$arrname = array(“val1”,”val2”,”val3”,..);
$cars=array("Saab","Volvo","BMW","Toyota");
Manual assignment to initialize array :
$cars[0]="Saab";
$cars[1]="Volvo";
$cars[2]="BMW";
$cars[3]="Toyota";
Adding elements to array at the end:
$cars[]="Saab";
$cars[]="Volvo";
$cars[]="BMW";
$cars[]="Toyota";
Associative
Array
If the initial index is a non-numeric
string, subsequent indexes are
integers beginning at 0.
◩ $whoops = array('Friday' => 'Black',
'Brown', 'Green');
◩ // same as $whoops = array('Friday' =>
'Black', 0 => 'Brown', 1 => 'Green');
Getting size of an
Array
The count( ) and sizeof( ) functions
return the number of elements in the
array.
They are identical in use and effect.
◩ $family = array('Fred', 'Wilma', 'Pebbles');
◩ $size = count($family); // $size is 3
◩ $family = array('Fred', 'Wilma', 'Pebbles');
$size = sizeof($family); // $size is 3
Iterator
FunctionsEvery PHP array keeps track of the current element you're
working with; the pointer to the current element is known as the
iterator. PHP has functions to set, move, and reset this iterator.
The iterator functions are:
current( )
◩ Returns the element currently pointed at by the iterator
reset( )
◩ Moves the iterator to the first element in the array and returns it
next( )
◩ Moves the iterator to the next element in the array and returns it
prev( )
◩ Moves the iterator to the previous element in the array and returns it
end( )
◩ Moves the iterator to the last element in the array and returns it
each( )
◩ Returns the key and value of the current element as an array and
moves the iterator to the next element in the array
key( )
◩ Returns the key of the current element
The each( ) function is used to loop over the elements of an
array. It processes elements according to their internal order:
To extract only a subset of the array, use the array_slice( )
function:
$subset = array_slice(array, offset, length);
The array_slice( ) function returns a new array consisting of
a consecutive series of values from the original array. The
offset parameter identifies the initial element to copy (0
represents the first element in the array), and the length
parameter identifies the number of values to copy. The new
array has consecutive numeric keys starting at 0.
Example
$people = array('Tom', 'Dick', 'Harriet', 'Brenda', 'Jo');
$middle = array_slice($people, 2, 2);
// $middle is array('Harriet', 'Brenda')
Example:-
$person = array('name' => 'Fred', 'age' => 35, 'wife' => 'Betty');
$subset = array_slice($person, 1, 2);
// $subset is array(0 => 35, 1 => 'Betty')
Slicing an
array
Creating variables from
arrayThe extract( ) function automatically
creates local variables from an array. The
indexes of the array elements are the
variable names
$person = array('name' => 'Fred', 'age' => 35, 'wife' =>
'Betty');
extract($person); // $name, $age, and $wife are now
set
print $name;
If a variable created by the extraction has the
same name as an existing one, the extracted
variable overwrites the existing variable.
$shape = "round"; $array = array("cover" => "bird", "shape"
=> "rectangular");
extract($array, EXTR_PREFIX_SAME, "book");
echo "Cover: $book_cover, Book Shape: $book_shape,
Shape: $shape";
Sorting one
array
Effect Ascending Descending
User-defined
order
Sort array by values, then
reassign indexes starting
with 0
sort( ) rsort( ) usort( )
Sort array by values asort( ) arsort( ) uasort( )
Sort array by keys ksort( ) krsort( ) uksort( )
print_r()
◩ print_r() displays information about a
variable in a way that's readable by
humans.
var_dump()
◩ This function displays structured
information about one or more
expressions that includes its type and
value.
◩ Example :-
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
print_r ($a);
?>
Array ( [a] => apple [b] => banana [c] => Array ( [0] => x [1] => y [2] => z )
)
explode() takes a string and splits it into
separate elements of an array using the
argument provided as a delimiter.
◩ explode(separator,string,limit)
◩ <?php
$str = "Hello world. It's a beautiful day.";
print_r (explode(" ",$str));
?>
explode()
Parameter Description
separator Required.Delimitor using which you can
break string.
string Required. The string to split
limit Optional. Specifies the maximum number
of array elements to return.
implode() traverses through the
elements of an array and re-creates a
single string.
implode(separator,array)
<?php
$arr = array('Hello','World!','Beautiful','Day!');
echo implode(" ",$arr);
?>
Output :- Hello World! Beautiful Day!
Implode()
Parameter Description
separator Optional. Specifies what to put
between the array elements. Default is
"" (an empty string)
array Required. The array to join to a string
Functions
A function is a block of code that has a
name and it has a property that it is
reusable.
Function groups a number of script
statements into a unit and gives it a
name.
To keep the script from being executed
when the page loads, you can put it into a
function.
A function will be executed by a call to the
function.
You may call a function from anywhere
within a page.
Syntax for
function
function functionName($param1,
$param2,
)
{
code to be executed;
return $value;
}
Example :-
<?php
function writeName()
{
echo “ABC";
}
echo "My name is ";
writeName();
?>
Example : with parameter
<?php
function writeName($fname)
{
echo $fname . “Paul.<br />";
}
echo "My name is ";
writeName("Jim");
echo "My sister's name is ";
writeName(“Agnes");
echo "My brother's name is ";
writeName("Steve");
?>
Date Time functions
int time ( )
◩ It returns you the current time
int strtotime ( string time [, int now])
◩ It converts string to timestamp. The string
time to convert, and a second optional
parameter that can be a relative timestamp.
string date ( string format [, int
timestamp])
◩ Parameter one is a special string containing
formatting codes for how you want the
timestamp converted. Parameter two is the
timestamp you want to convert - if you do not
supply it, PHP assumes you want to use the
current time.
Mathematical
FunctionsPHP provides you wide set of mathematical functions.
float ceil ( float value) – rounds to nearest int above current value.
float floor ( float value) - rounds to the nearest int below current
value.
float round ( float value [, int precision]) – rounds up the
specified value as first parameter to the specified precision as
second parameter.
Trigeonometric functions as:
float sin ( float value)
float cos ( float value)
float tan ( float value)
float asin ( float value)
float acos ( float value)
float atan ( float value)
float deg2rad ( float value)
float rad2deg ( float value)
Mathematical
Constants
Constant Meaning
M_PI PI (Value : 3.14159265358979323846 )
M_SQRTP
I
Sqrt(M_PI)
(Value :1.77245385090551602729 )
M_SQRT2 Sqrt(2) Value : 1.414213562373095
M_SQRT3 Sqrt(3) Value : 1.732050807568877
String
unctions‱ substr() :-This function returns the part of the string as an output.
Syntax : -
string substr(<string s>,<int start>,[<int length>]);
Examples :-
<?php echo substr("Hello world",6); ?> //Returns world
<?php echo substr("Hello world",6,4); ?> // Returns worl
<?php echo substr("Hello world", -1); ?> // Returns d
<?php echo substr("Hello world", -3, -1); ?> // Returns rl
‱ strlen() :-This function returns the length of the string.
Syntax :- int strlen(<string s>);
string s: It is mandatory field. The string whose length is to be found out is
mentioned here.
Example :-
<?php echo strlen("Hello world"); ?> // Returns 11
‱trim() :-This function removes the whitespaces from both start and the end
of the string.
Syntax :- string trim(<string s>);
Example :-
<?php echo trim( " Hello World "); ?>//Hello World
ltrim() :- This function removes the whitespaces from
the left part of the string.
◩ Syntax:- string ltrim(<string s>);
◩ Example :-
<?php echo ltrim( " Hello World "); ?> // returns Hello World
rtrim() :- This function removes the whitespaces from the right
part of the string.
Syntax :- string rtrim(<string s>);
◩ Example :-
<?php echo rtrim( " Hello World "); ?>// Hello World
strtolower() :-This function converts the string to lower case
◩ Syntax : string strtolower(<string s>);
◩ Example :-
<?php echo strtolower("HELLO WORLD"); ?> // Returns hello world
strtoupper():-This function converts the
string to upper case
◩ Syntax :strtoupper(<string s>);
◩ Example :-
◩ <?php echo strtoupper("hello world"); ?> //
Returns HELLO WORLD
strcmp():-The strcmp() function compares
two strings.
◩ This function returns:
◩ 0 – if the two strings are equal
◩ <0 – if string1 is less than string2
◩ >0 – if string1 is greater than string2
◩ Syntax : strcmp(<string1>,<string2>);
◩ Example :-
◩ <?php echo strcmp("Hello world!","Hello world!");
?> // 0
Regular
Expression
Usually referred as regex.
Regular expression is a specially
formatted pattern that can be used to
find instances of one string within
another.
Regular expressions in PHP are similar
to find/replace tools in text editors.
Regex engine is s/w that can process
regex such as trying to match a pattern
within given string.
Common Uses of Regular
ExpressionsIn Web application, regular expression
would be helpful as under:
◩ Input Validation
◩ Verifying input format
◩ Parsing data from pre-defined variables
◩ Searching for and replacing data in a file or
database.
Regular Expression
Functions
Function Description
preg_filter() Performs a regex search and replace.
preg_grep() Returns array entries that match the pattern.
preg_last_error
()
Returns error code of the last PCRE regex
execution.
preg_match() Performs regular expression match.
preg_match_all
()
Performs a global regular expression match.
preg_quote() Quote regular expression characters.
preg_replace() Performs a regex search and replace.
preg_split() Split string by a regular expression.

Mais conteĂșdo relacionado

Mais procurados

PHP Toolkit from Zend and IBM: Open Source on IBM i
PHP Toolkit from Zend and IBM: Open Source on IBM iPHP Toolkit from Zend and IBM: Open Source on IBM i
PHP Toolkit from Zend and IBM: Open Source on IBM iAlan Seiden
 
The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189Mahmoud Samir Fayed
 
Entrepreneur’s guide to programming
Entrepreneur’s guide to programmingEntrepreneur’s guide to programming
Entrepreneur’s guide to programmingChris Callahan
 
PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015kyphpug
 
Php Interview Questions
Php Interview QuestionsPhp Interview Questions
Php Interview QuestionsUmeshSingh159
 
PHP on Windows - What's New
PHP on Windows - What's NewPHP on Windows - What's New
PHP on Windows - What's NewZendCon
 
Zend Products and PHP for IBMi
Zend Products and PHP for IBMi  Zend Products and PHP for IBMi
Zend Products and PHP for IBMi Shlomo Vanunu
 

Mais procurados (9)

PHP Toolkit from Zend and IBM: Open Source on IBM i
PHP Toolkit from Zend and IBM: Open Source on IBM iPHP Toolkit from Zend and IBM: Open Source on IBM i
PHP Toolkit from Zend and IBM: Open Source on IBM i
 
Tech talk php_cms
Tech talk php_cmsTech talk php_cms
Tech talk php_cms
 
The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189The Ring programming language version 1.6 book - Part 6 of 189
The Ring programming language version 1.6 book - Part 6 of 189
 
Entrepreneur’s guide to programming
Entrepreneur’s guide to programmingEntrepreneur’s guide to programming
Entrepreneur’s guide to programming
 
Zend Framework
Zend FrameworkZend Framework
Zend Framework
 
PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015PHP Frameworks Review - Mar 19 2015
PHP Frameworks Review - Mar 19 2015
 
Php Interview Questions
Php Interview QuestionsPhp Interview Questions
Php Interview Questions
 
PHP on Windows - What's New
PHP on Windows - What's NewPHP on Windows - What's New
PHP on Windows - What's New
 
Zend Products and PHP for IBMi
Zend Products and PHP for IBMi  Zend Products and PHP for IBMi
Zend Products and PHP for IBMi
 

Destaque

Kodar-lan - Text and editors Character encoding and UTF-8
Kodar-lan - Text and editors Character encoding and UTF-8Kodar-lan - Text and editors Character encoding and UTF-8
Kodar-lan - Text and editors Character encoding and UTF-8Tim Gremalm
 
Regular expressionfunction
Regular expressionfunctionRegular expressionfunction
Regular expressionfunctionADARSH BHATT
 
Intro to PHP
Intro to PHPIntro to PHP
Intro to PHPSandy Smith
 
PHP Functions & Arrays
PHP Functions & ArraysPHP Functions & Arrays
PHP Functions & ArraysHenry Osborne
 
Regular expressions
Regular expressionsRegular expressions
Regular expressionsIgnaz Wanders
 
Regular Expression
Regular ExpressionRegular Expression
Regular ExpressionMahzad Zahedi
 

Destaque (7)

Kodar-lan - Text and editors Character encoding and UTF-8
Kodar-lan - Text and editors Character encoding and UTF-8Kodar-lan - Text and editors Character encoding and UTF-8
Kodar-lan - Text and editors Character encoding and UTF-8
 
Regular expressionfunction
Regular expressionfunctionRegular expressionfunction
Regular expressionfunction
 
Intro to PHP
Intro to PHPIntro to PHP
Intro to PHP
 
PHP Functions & Arrays
PHP Functions & ArraysPHP Functions & Arrays
PHP Functions & Arrays
 
Regular expressions
Regular expressionsRegular expressions
Regular expressions
 
Regular Expression
Regular ExpressionRegular Expression
Regular Expression
 
Arrays in PHP
Arrays in PHPArrays in PHP
Arrays in PHP
 

Semelhante a Learn PHP Lacture1

Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHPEric Johnson
 
Php training in bhubaneswar
Php training in bhubaneswar Php training in bhubaneswar
Php training in bhubaneswar litbbsr
 
Php training in bhubaneswar
Php training in bhubaneswar Php training in bhubaneswar
Php training in bhubaneswar litbbsr
 
PHP ITCS 323
PHP ITCS 323PHP ITCS 323
PHP ITCS 323Sleepy Head
 
PHP Basics
PHP BasicsPHP Basics
PHP BasicsSasi Kumar
 
PHP Training Institute In Delhi.pptx
PHP Training Institute In Delhi.pptxPHP Training Institute In Delhi.pptx
PHP Training Institute In Delhi.pptxDivyaSharma84779
 
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.pdfMindfire LLC
 
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
 
Php hypertext pre-processor
Php   hypertext pre-processorPhp   hypertext pre-processor
Php hypertext pre-processorSiddique Ibrahim
 
chapter 5 Server-Side Scripting (PHP).pdf
chapter 5 Server-Side Scripting (PHP).pdfchapter 5 Server-Side Scripting (PHP).pdf
chapter 5 Server-Side Scripting (PHP).pdfburasyacob012
 
What is PHP?
What is PHP?What is PHP?
What is PHP?audreys9327
 
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.pdfMoonTechnolabsPvtLtd
 
PHP vs Python Which is Best for Web Development.pdf
PHP vs Python Which is Best for Web Development.pdfPHP vs Python Which is Best for Web Development.pdf
PHP vs Python Which is Best for Web Development.pdfchristiemarie4
 

Semelhante a Learn PHP Lacture1 (20)

Php intro
Php introPhp intro
Php intro
 
Php
PhpPhp
Php
 
Introduction to PHP - SDPHP
Introduction to PHP - SDPHPIntroduction to PHP - SDPHP
Introduction to PHP - SDPHP
 
Php training in bhubaneswar
Php training in bhubaneswar Php training in bhubaneswar
Php training in bhubaneswar
 
Php training in bhubaneswar
Php training in bhubaneswar Php training in bhubaneswar
Php training in bhubaneswar
 
Programming language
Programming languageProgramming language
Programming language
 
PHP ITCS 323
PHP ITCS 323PHP ITCS 323
PHP ITCS 323
 
PHP Basics
PHP BasicsPHP Basics
PHP Basics
 
Php ppt
Php pptPhp ppt
Php ppt
 
PHP Training Institute In Delhi.pptx
PHP Training Institute In Delhi.pptxPHP Training Institute In Delhi.pptx
PHP Training Institute In Delhi.pptx
 
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
 
Welcome to computer programmer 2
Welcome to computer programmer 2Welcome to computer programmer 2
Welcome to computer programmer 2
 
How PHP works
How PHP works How PHP works
How PHP works
 
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 hypertext pre-processor
Php   hypertext pre-processorPhp   hypertext pre-processor
Php hypertext pre-processor
 
chapter 5 Server-Side Scripting (PHP).pdf
chapter 5 Server-Side Scripting (PHP).pdfchapter 5 Server-Side Scripting (PHP).pdf
chapter 5 Server-Side Scripting (PHP).pdf
 
What is PHP?
What is PHP?What is PHP?
What is PHP?
 
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
 
PHP vs Python Which is Best for Web Development.pdf
PHP vs Python Which is Best for Web Development.pdfPHP vs Python Which is Best for Web Development.pdf
PHP vs Python Which is Best for Web Development.pdf
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vĂĄzquez
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel AraĂșjo
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Learn PHP Lacture1

  • 1. PHP & Framework Name:-Adarsh Bhatt Contact:-ambhatt23@yahoo.com 9408374479
  • 2. Index:- ‱ Overview of Open Source Software. ‱ Widely Used Open Source Software. ‱ Difference between Open Source Software and Close Source Software. ‱ Pros and Cons of OSS. ‱ Background Information of PHP. ‱ Using variables ‱ operators & expressions ‱ Conditional Statements : ‱ if statement ‱ switch statement ‱ Looping Statements: ‱ for loop ‱ while loop ‱ do..while loop ‱ foreach loop ‱ Functions & Arrays in PHP ‱ PHP functions ‱ Creating arrays ‱ Regular Expressions
  • 3. ‱ PHP and Database ‱ Storage Types ‱ PHP with MySQL. ‱ Deal with Database. ‱ Manipulation with tables using PHP. ‱ Include(),include_once(). ‱ Require(),require_once(). ‱ Working with User Data and Error Handling. ‱ Cookie ‱ Session ‱ Error Handling ‱ Types of error ‱ Object Oriented Programming with PHP. ‱ Class, Constructor, Destructure ‱ Inheritance ‱ Magic Methods. ‱ Overview of PHP Framework. ‱ Popular PHP Framework. ‱ WordPpress, Magento, Opencart, Drupal, Zoomla etc.
  • 4. Overview of Open Source. Open-source software (OSS) is computer software that is available in source code form: the source code and certain other rights normally reserved for copyright holders are provided under a software license that permits users to study, change, improve and at times also to distribute the software. Open Source is a certification standard issued by the Open Source Initiative (OSI) that indicates that the source code of a computer program is made available free of charge to the general public. For an Open Source Software to be an "OSI Certified" a product must meet the following criteria: ◩ The author or holder of the license of the source code cannot collect royalties on the distribution of the program. ◩ The distributed program must make the source code accessible to the user. ◩ The author must allow modifications and derivations of the work under the program's original name.
  • 5. Widely used open source products Linux Kernel (Operating System) Apache (Web Server) GNOME, KDE (Desktop Environment) MySQL (Database emphasizing speed) Postgre SQL ( Database emphasizing functionality) PHP(Server-side scripting) Open Office.org ( multi platform and multi lingual office suite ) Filezilla (fast & reliable FTP client) Pant.net(Free image editing software)
  • 6. Open Source Software vs Close Source Software Term Open Source Closed Source Cost ‱Open source software may be free. If you have in- house capability for implementation, training then it is the best option. Otherwise you need to pay for it. ‱Open source software requires a certain level of technical expertise in order to manage content. ‱Open source software providers are increasingly charging for add-ons, additional services and integration. ‱The cost of proprietary software will vary from a few thousand to a few hundred thousand dollars, depending on the complexity of the system required. ‱This cost is made up of a base fee for software, integration and services and annual licensing/support fees.
  • 7. Term Open Source Closed Source Innovation Open source software enables innovation by providing users with the freedom and flexibility to adapt the software to suit, without restriction. Proprietary software providers do not allow users to view or alter the source code. While this may be viewed as a disadvantage to some, it ensures the security and reliability of the software. Usability It is developer-centric. Requires system administration expertise. No availability of the proper documentation of the system is available. Proprietary software generally employs expert usability testing, and as the software is normally aimed at a more targeted audience
  • 8. Term Open Source Closed Source Services & Support ‱Service is one of the key issues regarding open source software. Open source software relies on its online community network to deliver support via forums and blogs. ‱These communities cannot guarantee the high level of responsive service and support proprietary software can offer. ‱Proprietary software providers offer ongoing support to users, a key selling point for users without technical expertise. ‱Service is one of the main reasons users choose proprietary software, many proprietary software providers compete on service , increasing the bargaining power of buyers and thereby increasing customer service levels among providers.
  • 9. ‱Term ‱Open Source ‱Closed Source Security ‱Open source software is not developed in a controlled environment. ‱While development they often have a oconcentrated dev. team, oindividuals all over the world who may not work on the software for the duration of its developing lifetime. This lack of continuity and common direction can lead to barriers to effective communication surrounding the software. ‱Proprietary software is viewed as more secure because it is developed in a controlled environment by a concentrated team with a common direction.
  • 10. Pros and Cons of OSS Pros of OSS:- ◩ Helped to produce reliable, high quality software quickly and inexpensively. ◩ thousands of independent programmers testing and fixing bugs of the software. ◩ From a developer’s point of view, open source technologies provide a platform on which to build custom solutions.
  • 11. ‱ Cons of OSS ◩ In terms of security, open source may allow hackers to know about the weaknesses or loopholes of the software more easily than closed-source software. ◩ open source development process may not be well defined and the stages in the development process, such as system testing and documentation may be ignored. ◩ It is also difficult to design a commercially sound business model around the open source paradigm. ◩ Anyone can develop competing product because its Open Source. ◩ Almost everything in open source is viewable by other developers. If a developer makes a major mistake, it can become public information and
  • 12. Background Information of PHPPHP stands for “Hypertext Preprocessor”. It is widely used Open source, general purpose scripting language for web development & can be embedded into HTML. Hypertext preprocessor is an interpreter of PHP code created to run successfully on web servers.The interpreter processes PHP code spec invoked by web server & finally dispatches HTML code to a browser. PHP is a server-side scripting language which means that PHP scripts or programs usually run on the web server. PHP Script is processed by PHP Engine each time when it runs. PHP Syntax is based on C. So it is easy for C Programmer to learn & work in PHP. PHP was created by Rasmus Lerdorf in 1994, a developer of PERL/CGI Script. Version 1 : (1994) ◩ PHP started out with the set of simple tools coded in C language to replace Perl script and it was used on his Personal Home Page (so acronym - PHP).
  • 13. Version 2 : (1995) ◩ First popular version of PHP. Version 3 : (1998) ◩ Developers were able to write their own modules for language, adding functionality to its core. Version 4 : (2000) ◩ Important change made to PHP 4 was switching to Zend Engine, created by Zend company found by Zeev Suraski and Andi Gutmans. ◩ PHP started running on: Apache Web Server Microsoft’s IIS Zeus AOLServer & many more Web Servers. Version 5 (2004) ◩ It focused on language maturity & offered a lots of new functionalities that had been missing in previous versions. Cont

  • 14. Cont
 PHP 6 :- Currently available as a developer snapshot which can be downloaded and tried out. It is planning to offer the following :- Improved Unicode Support Namespaces, SOAP, XML. Benefits of running PHP As a Server Side Script ◩ PHP Script is always invisible to client browser, as Web Server sends only output of PHP Script to client browser, not script only. ◩ PHP Scripts are browser neutral. Drawbacks in running PHP as a Server – Side Script ◩ PHP consumes lots of web server resources because everything is executed on Web Server. ◩ With many concurrent requests & large complex scripts, the server might not be able to respond smoothly. ◩ PHP 5.5.7 is a latest version release on 12th december,2013. ◩ PHP 5.6.0 alpha1 released on 23rd Jan,2014 but it is in development preview mode.
  • 15. What is a PHP file?PHP File is an ASCII file created using any editor like Notepad, Dreamviewer, etc. and stored on HDD. The file contains mix of HTML & PHP. PHP files may contain text, HTML tags & scripts. After PHP files is processed, output is returned as plain HTML. PHP files usually have .PHP extension. PHP runs on different OS platforms seamlessly, being interpreted scripting language. PHP is compatible with almost all Web Servers. PHP is free to download from official PHP Resource. PHP is easy to learn & runs efficiently on any compatible Web Server.
  • 16. Internal Structure of PHP Database Webpage w e b s e r v e r Function Modules InterfaceWeb Server Interface Runtime Compiler Zend Engine Executor Web Server Software Modules php MySQL Oracle ODBC XML PDO ...
  • 17. Variables are identifiers which point to memory location in which data are stored. Variables in PHP are weakly/loosely typed which means when a variable is being defined their data type is not declared prior to use. Variables can change its type depending on value being assigned as often needed. Variables
  • 18. Variable name should begin with dollar sign. First character after dollar sign should be letter or an underscore. Remaining characters in a variable name can be letters, characters, or underscore without any fixed limit. Following characters are not allowed in variable name :- *, +, #, @, -,&,ÂŁ. Variables in PHP are case-sensitive. Naming Rules for variables
  • 19. As it allows to convert variables data-type automatically depending on the content in the variable. It is beneficial as it makes variable very flexible & same variable can be used at several different situations. It is disadvantageous as , if you pass around data accidentally of wrong type it won’t inform you about it. To know variable datatype use gettype($var) function.e.g PHP is loosely-typed language
  • 20. DataType: - PHP has several different types of variables. All holds specific class/type of information. PHP has 8 basic data types which are categorized into 3 categories :- 1. Scalar Datatype 2. Compound Datatype 3. Special Datatype
  • 21. Scalar Data Type:-Scalar data means data that contains only a single value. Data type Description Integer -Stores whole numbers either +ve or – ve. -If value assigned is out of the range it is converted to float. Float - Store floating point numbers as well as higher integers. String - Stores sequence of characters terminated by NULL. Boolean -It holds true or false. -Internally it holds integer value - 0 for false - rest values for true.
  • 22. Compound Data Type Compound data is data that can contain more than one variable. Data type Description Array -Ordered map -It holds multiple values. Object -They have multiple values within it. -They have their own functions for accessing and/ or manipulating its data.
  • 23. Special Data typePHP supports two special data types which have a specific meaning. Data types Description Resource Contains a reference to an external resource, such as file or database. It can be used in same manner as we use another variables but only difference is it should be freed up when not required. Null Contains null as a value. Explicitly do not contain any value.
  • 24. Conditional Statements if statement switch statement goto statement
  • 25. If statement Simple if if(test-expr) { True part } statement If...else statement if(test-expr) { True part } else { False part } Nested if statement if(test-exp 1) { if(test-exp 2) { true 1 & 2 } else { false 2 } } else { false part all }
  • 26. else if ladder :- if(test-exp 1) statement -1; else if(test-exp 2) statement – 2; else if(test-exp 3) statement – 3; . . . else false statement switch statement :- switch(ch) { case value1: statement 1;break; case value2: statement 2;break; case value3: statement 3; break; . . . default : statement-false; break; } Case value can be of any data type or even any condition. We can use break and continue interchangeable. Default can be placed anywhere in switch.
  • 27. goto statement The goto operator can be used to jump to another section in the program. The target point is specified by a label followed by a colon, and the instruction is given as goto followed by the desired target label. The target label must be within the same file and context, meaning that you cannot jump out of a function or method, nor can you jump into one. You also cannot jump into any sort of loop or switch structure.
  • 28. goto statement Forward Jump :- <?php goto label; statement -1 label: statement -2 ?> Example : <?php goto a; echo 'Foo‘; a: echo 'Bar'; ?> Backward Jump :- <?php label: statement -2 goto label; statement -1 ?> Example : <?php a: echo 'Bar'; goto a; echo 'Foo'; ?>
  • 29. Loo p while loop while (expr) statement; while (expr): statement ... endwhile; do..while loop :- do{ statements; }while(expr); for loop :- for(intialization; condition; incr/decr) { statement; } do..while loop is executed at least once whereas while and for loop executes only when condition is satisfied.
  • 30. Foreach Loop The foreach construct provides an easy way to iterate over arrays. foreach works only on arrays and objects. foreach will issue an error when you try to use it on a variable with a different data type or an uninitialized variable. Syntax : 1 foreach (array_expression as $value) statement // indexed array Syntax : 2 foreach (array_expression as $key => $value) statement // associative array When foreach first starts executing, the internal array pointer is automatically reset to the first element of the array.Indexed Array : <?php $array = array(1,2,3,4); foreach($array as $val) { print $val; } ?> Associative Array : <?php $arr = array(1=>’ABC’,2=>’PQR’); foreach ($arr as $key => $val) { print "$key = $valn"; } ?>
  • 31. PHP Super Globals Super Globals are variables that are automatically available throughout all program code in all scopes. These variables do not require declaration and then too they can be accessed. Super global variables provide :- ◩ Useful information about the environment. ◩ Allow access to HTML form variables or parameters. ◩ Access to cookies stored on a client. ◩ Keeping track of sessions and file uploads.
  • 32. Name Functionality $GLOBALS Contains all global variables in your script, including other super globals. This is not generally recommended for use, unless you are, for some reason, not sure where a variable will be stored. $_GET Contains all variables sent via a HTTP GET request. That is, sent by way of the URL. $_POST Contains all variables sent via a HTTP POST request. $_FILES Contains all variables sent via a HTTP POST file upload. $_COOKIE Contains all variables sent via HTTP cookies. $_SESSION Contains all variables stored in a user's session. $_SERVER Contains all variables set by the web server you are using, or other sources that directly relate to the execution of your script.
  • 33. Name Functionality $_REQUEST Contains all variables sent via HTTP GET, HTTP POST, and HTTP cookies. This is basically the equivalent of combining $_GET, $_POST, and $_COOKIE, and is less dangerous than using $GLOBALS. However, as it does contain all variables from untrusted sources (that is, your visitors), you should still try to steer clear unless you have very good reason to use it. $_ENV Contains all environment variables set by your system or shell for the script.
  • 34. Array An array in PHP is actually an ordered map. A map is a type that associates values to keys. Syntax to specify array with array() :- array( key => value , ... ) key may only be an integer or string value may be any value of any type An array can hold all your variable values under a single name. And you can access the values by referring to the array name and index of element. Each element in the array has its own index so that it can be easily accessed.
  • 35. Types of Array There are two kind of arrays: 1. Indexed array - An array with a numeric index beginning with 0. Indexed arrays are used when you identify things by their position. 2. Associative array - An array where each ID key is associated with a value. Associative arrays have strings as keys and behave more like two-column tables. The first column is the key, which is used to access the value. ‱ PHP internally stores array as associative array. Assigning elements to array using array(): $arrname = array(“val1”,”val2”,”val3”,..); $cars=array("Saab","Volvo","BMW","Toyota"); Manual assignment to initialize array : $cars[0]="Saab"; $cars[1]="Volvo"; $cars[2]="BMW"; $cars[3]="Toyota"; Adding elements to array at the end: $cars[]="Saab"; $cars[]="Volvo"; $cars[]="BMW"; $cars[]="Toyota";
  • 36. Associative Array If the initial index is a non-numeric string, subsequent indexes are integers beginning at 0. ◩ $whoops = array('Friday' => 'Black', 'Brown', 'Green'); ◩ // same as $whoops = array('Friday' => 'Black', 0 => 'Brown', 1 => 'Green');
  • 37. Getting size of an Array The count( ) and sizeof( ) functions return the number of elements in the array. They are identical in use and effect. ◩ $family = array('Fred', 'Wilma', 'Pebbles'); ◩ $size = count($family); // $size is 3 ◩ $family = array('Fred', 'Wilma', 'Pebbles'); $size = sizeof($family); // $size is 3
  • 38. Iterator FunctionsEvery PHP array keeps track of the current element you're working with; the pointer to the current element is known as the iterator. PHP has functions to set, move, and reset this iterator. The iterator functions are: current( ) ◩ Returns the element currently pointed at by the iterator reset( ) ◩ Moves the iterator to the first element in the array and returns it next( ) ◩ Moves the iterator to the next element in the array and returns it prev( ) ◩ Moves the iterator to the previous element in the array and returns it end( ) ◩ Moves the iterator to the last element in the array and returns it each( ) ◩ Returns the key and value of the current element as an array and moves the iterator to the next element in the array key( ) ◩ Returns the key of the current element The each( ) function is used to loop over the elements of an array. It processes elements according to their internal order:
  • 39. To extract only a subset of the array, use the array_slice( ) function: $subset = array_slice(array, offset, length); The array_slice( ) function returns a new array consisting of a consecutive series of values from the original array. The offset parameter identifies the initial element to copy (0 represents the first element in the array), and the length parameter identifies the number of values to copy. The new array has consecutive numeric keys starting at 0. Example $people = array('Tom', 'Dick', 'Harriet', 'Brenda', 'Jo'); $middle = array_slice($people, 2, 2); // $middle is array('Harriet', 'Brenda') Example:- $person = array('name' => 'Fred', 'age' => 35, 'wife' => 'Betty'); $subset = array_slice($person, 1, 2); // $subset is array(0 => 35, 1 => 'Betty') Slicing an array
  • 40. Creating variables from arrayThe extract( ) function automatically creates local variables from an array. The indexes of the array elements are the variable names $person = array('name' => 'Fred', 'age' => 35, 'wife' => 'Betty'); extract($person); // $name, $age, and $wife are now set print $name; If a variable created by the extraction has the same name as an existing one, the extracted variable overwrites the existing variable. $shape = "round"; $array = array("cover" => "bird", "shape" => "rectangular"); extract($array, EXTR_PREFIX_SAME, "book"); echo "Cover: $book_cover, Book Shape: $book_shape, Shape: $shape";
  • 41. Sorting one array Effect Ascending Descending User-defined order Sort array by values, then reassign indexes starting with 0 sort( ) rsort( ) usort( ) Sort array by values asort( ) arsort( ) uasort( ) Sort array by keys ksort( ) krsort( ) uksort( )
  • 42. print_r() ◩ print_r() displays information about a variable in a way that's readable by humans. var_dump() ◩ This function displays structured information about one or more expressions that includes its type and value. ◩ Example :- <?php $a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z')); print_r ($a); ?> Array ( [a] => apple [b] => banana [c] => Array ( [0] => x [1] => y [2] => z ) )
  • 43. explode() takes a string and splits it into separate elements of an array using the argument provided as a delimiter. ◩ explode(separator,string,limit) ◩ <?php $str = "Hello world. It's a beautiful day."; print_r (explode(" ",$str)); ?> explode() Parameter Description separator Required.Delimitor using which you can break string. string Required. The string to split limit Optional. Specifies the maximum number of array elements to return.
  • 44. implode() traverses through the elements of an array and re-creates a single string. implode(separator,array) <?php $arr = array('Hello','World!','Beautiful','Day!'); echo implode(" ",$arr); ?> Output :- Hello World! Beautiful Day! Implode() Parameter Description separator Optional. Specifies what to put between the array elements. Default is "" (an empty string) array Required. The array to join to a string
  • 45. Functions A function is a block of code that has a name and it has a property that it is reusable. Function groups a number of script statements into a unit and gives it a name. To keep the script from being executed when the page loads, you can put it into a function. A function will be executed by a call to the function. You may call a function from anywhere within a page.
  • 46. Syntax for function function functionName($param1, $param2,
) { code to be executed; return $value; } Example :- <?php function writeName() { echo “ABC"; } echo "My name is "; writeName(); ?> Example : with parameter <?php function writeName($fname) { echo $fname . “Paul.<br />"; } echo "My name is "; writeName("Jim"); echo "My sister's name is "; writeName(“Agnes"); echo "My brother's name is "; writeName("Steve"); ?>
  • 47. Date Time functions int time ( ) ◩ It returns you the current time int strtotime ( string time [, int now]) ◩ It converts string to timestamp. The string time to convert, and a second optional parameter that can be a relative timestamp. string date ( string format [, int timestamp]) ◩ Parameter one is a special string containing formatting codes for how you want the timestamp converted. Parameter two is the timestamp you want to convert - if you do not supply it, PHP assumes you want to use the current time.
  • 48. Mathematical FunctionsPHP provides you wide set of mathematical functions. float ceil ( float value) – rounds to nearest int above current value. float floor ( float value) - rounds to the nearest int below current value. float round ( float value [, int precision]) – rounds up the specified value as first parameter to the specified precision as second parameter. Trigeonometric functions as: float sin ( float value) float cos ( float value) float tan ( float value) float asin ( float value) float acos ( float value) float atan ( float value) float deg2rad ( float value) float rad2deg ( float value)
  • 49. Mathematical Constants Constant Meaning M_PI PI (Value : 3.14159265358979323846 ) M_SQRTP I Sqrt(M_PI) (Value :1.77245385090551602729 ) M_SQRT2 Sqrt(2) Value : 1.414213562373095 M_SQRT3 Sqrt(3) Value : 1.732050807568877
  • 50. String unctions‱ substr() :-This function returns the part of the string as an output. Syntax : - string substr(<string s>,<int start>,[<int length>]); Examples :- <?php echo substr("Hello world",6); ?> //Returns world <?php echo substr("Hello world",6,4); ?> // Returns worl <?php echo substr("Hello world", -1); ?> // Returns d <?php echo substr("Hello world", -3, -1); ?> // Returns rl ‱ strlen() :-This function returns the length of the string. Syntax :- int strlen(<string s>); string s: It is mandatory field. The string whose length is to be found out is mentioned here. Example :- <?php echo strlen("Hello world"); ?> // Returns 11 ‱trim() :-This function removes the whitespaces from both start and the end of the string. Syntax :- string trim(<string s>); Example :- <?php echo trim( " Hello World "); ?>//Hello World
  • 51. ltrim() :- This function removes the whitespaces from the left part of the string. ◩ Syntax:- string ltrim(<string s>); ◩ Example :- <?php echo ltrim( " Hello World "); ?> // returns Hello World rtrim() :- This function removes the whitespaces from the right part of the string. Syntax :- string rtrim(<string s>); ◩ Example :- <?php echo rtrim( " Hello World "); ?>// Hello World strtolower() :-This function converts the string to lower case ◩ Syntax : string strtolower(<string s>); ◩ Example :- <?php echo strtolower("HELLO WORLD"); ?> // Returns hello world
  • 52. strtoupper():-This function converts the string to upper case ◩ Syntax :strtoupper(<string s>); ◩ Example :- ◩ <?php echo strtoupper("hello world"); ?> // Returns HELLO WORLD strcmp():-The strcmp() function compares two strings. ◩ This function returns: ◩ 0 – if the two strings are equal ◩ <0 – if string1 is less than string2 ◩ >0 – if string1 is greater than string2 ◩ Syntax : strcmp(<string1>,<string2>); ◩ Example :- ◩ <?php echo strcmp("Hello world!","Hello world!"); ?> // 0
  • 53. Regular Expression Usually referred as regex. Regular expression is a specially formatted pattern that can be used to find instances of one string within another. Regular expressions in PHP are similar to find/replace tools in text editors. Regex engine is s/w that can process regex such as trying to match a pattern within given string.
  • 54. Common Uses of Regular ExpressionsIn Web application, regular expression would be helpful as under: ◩ Input Validation ◩ Verifying input format ◩ Parsing data from pre-defined variables ◩ Searching for and replacing data in a file or database.
  • 55. Regular Expression Functions Function Description preg_filter() Performs a regex search and replace. preg_grep() Returns array entries that match the pattern. preg_last_error () Returns error code of the last PCRE regex execution. preg_match() Performs regular expression match. preg_match_all () Performs a global regular expression match. preg_quote() Quote regular expression characters. preg_replace() Performs a regex search and replace. preg_split() Split string by a regular expression.