PHP PHP: Hypertext Preprocessing - Actlab .csc.villanova.edu

scacchicgardenΛογισμικό & κατασκευή λογ/κού

13 Δεκ 2013 (πριν από 3 χρόνια και 5 μήνες)

121 εμφανίσεις

PHP

PHP: Hypertext Preprocessing

Matt Murphy & Dublas Portillo

What is PHP?


PHP is a server
-
side scripting language designed
specifically for the Web.


An open source language


PHP code can be embedded within an HTML page,
which will be executed each time that page is visited.


Example code (all equivalent):


Short Style
:
<? echo “Hello World!”; ?>


XML Style
:
<?php echo “Hello World!”; ?>


Script Style
:
<SCRIPT LANGUAGE=‘php’> echo “Hello World!”;
</SCRIPT>


ASP Style
:
<% echo “Hello World!”; %>

History of PHP


Created by Rasmus Lerdorf in 1994


Originally a set of Perl scripts used by Lerdorf to
show off his résumé as well as collect
information on his website, such as the site’s
traffic info.


Lerdorf later transcribed these Perl scripts into a
set of CGI binaries written in C, and in doing
so, combined it with his own Form Interpreter
to create PHP/FI.

History of PHP


PHP/FI grew in popularity, but did not become
widely known until two program developers
named Zeev Suraski and Andi Gutmans,
developed a new parser in the summer of 1997,
which led to the development of PHP 3.0.


The newest version out is PHP 5, which uses an
engine developed by Suraski and Gutmans,
known as the Zend II Engine. (Zend I was used
by PHP 4)


PHP Programming Paradigms


Uses both procedural and object oriented paradigms


Procedural PHP


Has been in use since the creation of PHP, its primary
paradigm.


Allows for easy and quick learning of the PHP language.


Similar to other popular languages such as Visual Basic,
C++, and Fortran.

PHP Programming Paradigms


Object Oriented PHP


Similar to Java, example of an object class:


<?php

class BaseClass {


function __construct() {


echo "In BaseClass constructor<br>";


}

}


class SubClass extends BaseClass {


function __construct() {


parent::__construct();


echo "In SubClass constructor<br>";


}

}


$obj = new BaseClass();

$obj = new SubClass();

?>

public class BaseClass {


public BaseClass() {


System.out.println("In BaseClass
constructor
\
n");


}

}


class SubClass extends BaseClass {


public SubClass() {


super();


System.out.println("In SubClass constructor
\
n");


}

}

-----------------------------------------

public class Output {


public static void main(String[] args) {


Object obj;



obj = new BaseClass();


obj = new SubClass();


}

}

Features of PHP


Very Efficient


Can serve millions of hits per day.


Database Integration


Supports many databases, such as mySQL
and Oracle. Also has excellent XML support as of PHP 5.


Built
-
in Libraries


Tailored to web development, one can connect to
other network services, send email, work with cookies, generate PDF
documents, and make GIF images on the fly all with a few lines of code.


It’s Free


Available on http://www.php.net


Easy to Learn


Very similar in syntax to C/C++/Java and Perl.


Portable


Works on Unix based operating systems, on Mac OS X, as well
as on versions of Microsoft Windows. Your PHP code will often work
without modification on a different system running PHP.

Database Support


The following is a list of supported databases in PHP 5:


Adabas D
InterBase
PostgreSQL
dBase

FrontBase
SQLite

Empress

mSQL


FilePro

(read
-
only)

Solid

Direct MS
-
SQL

Sybase

Hyperwave

MySQL

Velocis


ODBC

Unix dbm

Informix

Oracle
(OCI7 and OCI8)

Ingres

Ovrimos

IBM DB2

Differences From Java


Data types are not required in variable
declarations.


The $ symbol precedes all variables in PHP


Constants are declared using the define()
method in PHP: ex.
define(“AOL",

"something");



Constructors do not necessarily have to be the
same name as the class name.


Destructors are used in PHP to remove objects
from memory after they are constructed.

What is PHP Good For?


It is great for complex web page designs


E
-
commerce sites with heavy traffic (ex. Amazon)


Complex bulletin boards and forums (ex. phpBB)


Secure websites (ex. Novasis)


Email web hosts (ex. Gmail)


Working with and integrating XML into your webpage


Database management and search (ex. theFaceBook)

Processing a PHP Page

Getting Started


Download Apache 2 Windows Binary (MSI installer) at
http://httpd.apache.org/download.cgi


The zip must end with win32
-
x86
-
no_ssl.msi


Download the PHP zip package at
http://www.php.net/downloads.php


Download the zip pack, not the installer


Install Apache 2,
use

recommended settings


If error message is given, go here (Google port 80 problem):
http://httpd.apache.org/docs/2.0/platform/windows.html


Unzip PHP file to C:
\
PHP

Getting Started


Next, copy/paste "php.ini
-
dist" to C:/Program
Files/Apache Group/Apache2, and rename it to
php.ini.


Copy the following list of .dll files from your C:
\
PHP
and C:
\
PHP
\
ext directory to your root Apache
directory (where you put php.ini):


fdftk.dll fribidi.dll gds32.dll libeay32.dll libmash.dll
libmysql.dll libmysqli.dll msql.dll ntwdblib.dll
php5apache2.dll php5apache.dll php5apache_hooks.dll
php5isapi.dll php5nsapi.dll php5ts.dll phpmsql.dll
phpmssql.dll phpmysql.dll phpmysqli.dll ssleay32.dll yas.dll


Getting Started


Set the PHP path for Windows:

Go to:

Control Panel > System > Advanced tab

Click on "Environment variables"

Look in the "System variables" pane

Find the "Path" entry

Double click it and add at the end of the string your PHP dir

You need to start with ";" without double quotes!

And follow by: C:php

So it will look like: ";C:php" Again, without double quotes!

Now restart the Apache server.

Test: Create a simple file (using notepad) such as php5_info.php <?
phpinfo();?>


Save it in C:/Program Files/Apache Group/Apache2/htdocs/php5_info.php

Open a browser and enter the following address
http://localhost/php5_info.php

it should display your complete PHP setting
if it does not work properly you might have done something wrong with the
multiple edits; check them out and give it another go.



Now you can use any text editor or html editor to create PHP files

An Example


titleCreator.php


Uses a simple form with simple fields


Asks a user for input, such as the title they want,
what their name is, the background color, etc.


When submitted, the page is reloaded with the
specified form values using PHP code to write out
new HTML code

titleCreator.php

Useful Links


Official Website (
http://www.php.net/
)


PHP Online Manual (
http://us2.php.net/manual/en/
)


Installation on Windows Systems
(
http://us2.php.net/manual/en/install.windows.php
)


Using Apache with Windows
(
http://httpd.apache.org/docs/2.0/platform/windows.html
)


Alternative Installation Guide
(
http://www.webmasterstop.com/86.html
)