Php tutorial by cyber security infotech(csi)

40
PHP TUTORIAL BY CYBER SECURITY INFOTECH (CSI) http://www.csinf otech.org/

Transcript of Php tutorial by cyber security infotech(csi)

Page 1: Php tutorial by cyber security infotech(csi)

PHP TUTORIAL BY CYBER SECURITY INFOTECH (CSI)

http://www.csinfotech.org/

Page 2: Php tutorial by cyber security infotech(csi)

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.

Page 3: Php tutorial by cyber security infotech(csi)

Agenda

Introduction PHP Language Basics Built-in Functions PHP on Linux and Windows Tricks and Tips PHP 5 Examples Questions?

Page 4: Php tutorial by cyber security infotech(csi)

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

Page 5: Php tutorial by cyber security infotech(csi)

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

Page 6: Php tutorial by cyber security infotech(csi)

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

Page 7: Php tutorial by cyber security infotech(csi)

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

Page 8: Php tutorial by cyber security infotech(csi)

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

Page 9: Php tutorial by cyber security infotech(csi)

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

Page 10: Php tutorial by cyber security infotech(csi)

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

Page 11: Php tutorial by cyber security infotech(csi)

Introduction Netcraft Statistics

11,869,645 Domains, 1,316,288 IP Addresses

Page 12: Php tutorial by cyber security infotech(csi)

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

Page 13: Php tutorial by cyber security infotech(csi)

PHP Language Basics The Script Tags

All PHP code is contained in one of several script tags: <?

// Some code?>

<?php// Some code here?>

Page 14: Php tutorial by cyber security infotech(csi)

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%>

Page 15: Php tutorial by cyber security infotech(csi)

PHP Language Basics The Script Tags (cont.)

“Echo” Tags <table>

<tr> <td>Name:</td><td><?= $name ?></td></tr><tr> <td>Address:</td><td><?= $address ?></td></tr></table>

Page 16: Php tutorial by cyber security infotech(csi)

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?>

Page 17: Php tutorial by cyber security infotech(csi)

PHP Language Basics Hello World!: An Example (cont.)

<script language=“PHP”> $hello = “Hello”; $world = “World!”; print $hello . $world</script>

Page 18: Php tutorial by cyber security infotech(csi)

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”);

Page 19: Php tutorial by cyber security infotech(csi)

PHP Language Basics Constants, Data Types and Variables

Using a constant print(“Company name: “ . COMPANY . NL);

Page 20: Php tutorial by cyber security infotech(csi)

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

Page 21: Php tutorial by cyber security infotech(csi)

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

Page 22: Php tutorial by cyber security infotech(csi)

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;

Page 23: Php tutorial by cyber security infotech(csi)

PHP Language Basics Constants, Data Types and Variables

Arrays (cont.) <?php

$arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));

echo $arr["somearray"][6]; // 5 echo $arr["somearray"][13]; // 9 echo $arr["somearray"]["a"]; // 42?>

Page 24: Php tutorial by cyber security infotech(csi)

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

Page 25: Php tutorial by cyber security infotech(csi)

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

Page 26: Php tutorial by cyber security infotech(csi)

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

Page 27: Php tutorial by cyber security infotech(csi)

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

Page 28: Php tutorial by cyber security infotech(csi)

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)

Page 29: Php tutorial by cyber security infotech(csi)

Built-in Functions What comes In the box?

Database Functions dba: dbm-style abstraction layer dBase Frontbase Informix Ingres II Interbase mSQL

Page 30: Php tutorial by cyber security infotech(csi)

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

Page 31: Php tutorial by cyber security infotech(csi)

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

Page 32: Php tutorial by cyber security infotech(csi)

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";}

Page 33: Php tutorial by cyber security infotech(csi)

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";

Page 34: Php tutorial by cyber security infotech(csi)

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

Page 35: Php tutorial by cyber security infotech(csi)

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

Page 36: Php tutorial by cyber security infotech(csi)

Tricks and Tips Debugging

Use scripts to dump form and session variables Write scripts to dump data to discover bad or

missing data

Page 37: Php tutorial by cyber security infotech(csi)

Tricks and Tips Development Tools

Color coding editors vim, Emacs, Visual SlickEdit

IDEs Windows

Macromedia Dreamweaver Allaire Homesite Zend’s PHPEdit

Linux ???

Page 38: Php tutorial by cyber security infotech(csi)

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

Page 39: Php tutorial by cyber security infotech(csi)

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

Page 40: Php tutorial by cyber security infotech(csi)

Thank you …