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