Php tutorial by cyber security infotech(csi). Cs-infotech is one of the best cyber security and website development company in India. we also provide Network security, software development, Cyber security corporate training and SEO and SMO services.
Our services are Employee Monitoring System,Employee Monitoring Software,Website Audit,Network Security,Network Audit and Information Security.
1. PHP TUTORIAL BY CYBER
SECURITY INFOTECH (CSI)
http://www.csinfotech.org/
2. About the company :
Cs-infotech is one of the best cyber security and website
development company in India. we also provide Network
security, software development, Cyber security
corporate training and SEO and SMO services.
Our services are Employee Monitoring System,
Employee Monitoring Software, Website Audit , Network
Security , Network Audit and Information Security.
3. Agenda
Introduction
PHP Language Basics
Built-in Functions
PHP on Linux and Windows
Tricks and Tips
PHP 5
Examples
Questions?
4. Introduction
What is PHP?
PHP stands for "PHP Hypertext Preprocessor”
An embedded scripting language for HTML like
ASP or JSP
A language that combines elements of Perl, C,
and Java
5. Introduction
History of PHP
Created by Rasmus Lerdorf in 1995 for tracking
access to his resume
Originally a set of Perl scripts known as the
“Personal Home Page” tools
Rewritten in C with database functionality
Added a forms interpreter and released as
PHP/FI: includes Perl-like variables, and HTML
embedded syntax
6. Introduction
History of PHP (cont.)
Rewritten again in and released as version 2.0 in
November of 1997
Estimated user base in 1997 is several thousand
users and 50,000 web sites served
Rewritten again in late 1997 by Andi Gutmans
and Zeev Suraski
More functionality added, database support,
protocols and APIs
7. Introduction
History of PHP (cont.)
User base in 1998 estimated 10,000 users and
100,000 web sites installed
Version 3.0 was released in June 1998 as PHP
Estimated user base in tens of thousands and
hundreds of thousands of web sites served
8. Introduction
History of PHP (cont.)
Rewritten again in 1997 by Andi Gutmans and
Zeev Suraski
More functionality added (OOP features),
database support, protocols and APIs
PHP 3.0 is released in June 1998 with some OO
capability
The core is rewritten in 1998 for improved
performance of complex applications
9. Introduction
History of PHP (cont.)
The core is rewritten in 1998 by Zeev and Andi
and dubbed the “Zend Engine”
The engine is introduced in mid 1999 and is
released with version 4.0 in May of 2000
The estimated user base is hundreds of
thousands of developers and several million of
web sites served
10. Introduction
History of PHP (cont.)
Version 5.0 will include version 2.0 of the Zend
Engine
New object model is more powerful and intuitive
Objects will no longer be passed by value; they now
will be passed by reference
Increases performance and makes OOP more
attractive
12. Introduction
Performance*
Zdnet Statistics
PHP pumped out about 47 pages/second
Microsoft ASP pumped out about 43 pages/second
Allaire ColdFusion pumped out about 29
pages/second
Sun Java JSP pumped out about 13 pages/second
13. PHP Language Basics
The Script Tags
All PHP code is contained in one of several script
tags:
<?
// Some code
?>
<?php
// Some code here
?>
14. PHP Language Basics
The Script Tags (cont.)
<script language=“PHP">
// Some code here
</script>
ASP-style tags
Introduced in 3.0; may be removed in the future
<%
// Some code here
%>
16. PHP Language Basics
Hello World!: An Example
Like Perl, there is more than one way to do it
<?php echo “Hello World!”; ?>
<?php
$greeting = “Hello World!”
printf(“%s”, $greeting);
php?>
17. PHP Language Basics
Hello World!: An Example (cont.)
<script language=“PHP”>
$hello = “Hello”;
$world = “World!”;
print $hello . $world
</script>
18. PHP Language Basics
Constants, Data Types and Variables
Constants define a string or numeric value
Constants do not begin with a dollar sign
Examples:
define(“COMPANY”, “Acme Enterprises”);
define(“YELLOW”, “#FFFF00”);
define(“PI”, 3.14);
define(“NL”, “<br>n”);
19. PHP Language Basics
Constants, Data Types and Variables
Using a constant
print(“Company name: “ . COMPANY . NL);
20. PHP Language Basics
Constants, Data Types and Variables
Data types
Integers, doubles and strings
isValid = true; // Boolean
25 // Integer
3.14 // Double
‘Four’ // String
“Total value” // Another string
21. PHP Language Basics
Constants, Data Types and Variables
Data types
Strings and type conversion
$street = 123;
$street = $street . “ Main Street”;
$city = ‘Naperville’;
$state = ‘IL’;
$address = $street;
$address = $address . NL . “$city, $state”;
$number = $address + 1; // $number equals 124
22. PHP Language Basics
Constants, Data Types and Variables
Data types
Arrays
Perl-like syntax
$arr = array("foo" => "bar", 12 => true);
same as
$arr[“foo”] = “bar”;
$arr[12] = true;
24. PHP Language Basics
Constants, Data Types and Variables
Objects
Currently not much more advanced than than associative
arrays Using constants
Before version 5.0, objects are passed by value
Slow
Functions can not easily change object variables
25. PHP Language Basics
Constants, Data Types and Variables
Operators
Contains all of the operators like in C and Perl (even the
ternary)
Statements
if, if/elseif
Switch/case
for, while, and do/while loops
Include and require statements for code reuse
26. Built-in Functions
What comes In the box?
Array Manipulator Functions
sort, merge, push, pop, slice, splice, keys, count
CCVS: Interface to Red Hat’s credit system
COM functions: Interface to Windows COM
objects
Date and Time Functions
getdate, mkdate, date, gettimeofday, localtime,
strtotime, time
27. Built-in Functions
What comes In the box?
Directory Functions
Platform independent
Error Handling Functions
Recover from warnings and errors
Filesystem Functions
Access flat files
Check directory, link, and file status information
Copy, delete, and rename files
28. Built-in Functions
What comes In the box?
IMAP Functions
Manipulate mail boxes via the IMAP protocol
LDAP Functions
Works with most LDAP servers
Mail Functions
mail($recipient, $subject, $message)
29. Built-in Functions
What comes In the box?
Database Functions
dba: dbm-style abstraction layer
dBase
Frontbase
Informix
Ingres II
Interbase
mSQL
30. Built-in Functions
What comes In the box?
Database Functions (cont.)
MySQL
Oracle
PostgreSQL
SQL Server
MING
Macromedia Flash
PDF
Create/manipulate PDF files dynamically
31. Built-in Functions
What comes In the box?
POSIX Functions
Manipulate process information
Regular Expression Functions
Uses POSIX regex
Semaphore and Socket Functions
Available only on Unix
Session Management Functions
32. PHP on Linux and Windows
Code Portability
The obvious: don’t use Unix or Windows specific
functions
Create a reusable module for file system
differences, for example:
if( PHP_OS == "Linux" )
{
$ConfigPath = "/var/www/conf";
$DataPath = "/var/www/data";
}
33. PHP on Linux and Windows
Code Portability
if( ereg("WIN", PHP_OS) )
{
$ApachePath = “C:/Program Files/Apache
Group/Apache”;
$ConfigPath = ”$ApachePath/htdocs/conf";
$DataPath = "$ApachePath/htdocs/data";
}
$ConfigFile = "$ConfigPath/paperwork.conf";
$CountryList = "$DataPath/countries.txt";
$StateAbbrList = "$DataPath/usstateabbrs.txt";
$StateNameList = "$DataPath/usstatenames.txt";
34. Tricks and Tips
Coding
Prototype your web pages first
Separate the design of the site from the coding
Turn repetitive code into functions
Makes for more maintainable and reusable code
Turn grunt code into functions
Database access, configuration file access
35. Tricks and Tips
Debugging
Feature: PHP is not a strongly typed language
Variables can be created anywhere in your code
Undocumented Feature: PHP is not a strongly
typed language
Typos in variable names will cause stuff to happen
36. Tricks and Tips
Debugging
Use scripts to dump form and session variables
Write scripts to dump data to discover bad or missing
data
37. Tricks and Tips
Development Tools
Color coding editors
vim, Emacs, Visual SlickEdit
IDEs
Windows
Macromedia Dreamweaver
Allaire Homesite
Zend’s PHPEdit
Linux
???
38. PHP 5
Release Date
???
Features
Complete objects
Objects with constructors
Abstract classes
Private, protected and abstract functions
Private, protected and constant variables
Namespaces
Exception handling with try/catch blocks
39. Resources
PHP Downloads and Online Documentation
www.php.net
Community
www.phpbuilder.com: articles on PHP, discussion forums
www.phpresourceindex.com: over 1,000 PHP scripts
www.phpvolcano.com: PHP 5 information
Newsgroups
comp.lang.php