1 / 43

Script Programming 876132

Script Programming 876132. Sutep JUNKHIAW sutep28@yahoo.com.

raja-pena
Download Presentation

Script Programming 876132

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Script Programming876132 Sutep JUNKHIAW sutep28@yahoo.com

  2. Basic PHP and JAVA Script, types of data, commands for checking, control commands, functions, pointer, variable sets, structural PHP language and JAVA Script, pre-processor, data files, and its application on geoinformatics data and work.

  3. Course Syllabus See the Document

  4. Work Group for 1-Project Topic :: Geo-HydrosphericAtmosheric Research Center : Faculty of Geoinformatics, Burapha University Eastern - Geographic Database Eastern - Water and Rainfall Database Eastern - Socio-Economic Database

  5. Developing Web Applications with PHP RAD for the World Wide Web

  6. Agenda • Introduction • PHP Language Basics • Built-in Functions • PHP on Linux and Windows • Tricks and Tips • PHP 5 • Examples

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

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. 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

  14. Introduction • Netcraft Statistics • 11,869,645 Domains, 1,316,288 IP Addresses

  15. 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* From PHP HOWTO, July 2001

  16. PHP Language Basics • The Script Tags • All PHP code is contained in one of several script tags: • <?// Some code?> • <?php// Some code here?>

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

  18. 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>

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

  20. PHP Language Basics • Hello World!: An Example (cont.) • <script language=“PHP”> $hello = “Hello”; $world = “World!”; print $hello . $world</script>

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

  22. PHP Language Basics • Constants, Data Types and Variables • Using a constant • print(“Company name: “ . COMPANY . NL);

  23. 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

  24. 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

  25. 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;

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

  27. 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

  28. 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

  29. 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

  30. 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

  31. 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)

  32. Built-in Functions • What comes In the box? • Database Functions • dba: dbm-style abstraction layer • dBase • Frontbase • Informix • Ingres II • Interbase • mSQL

  33. 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

  34. 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

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

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

  37. 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

  38. 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

  39. Tricks and Tips • Debugging • Use scripts to dump form and session variables • Write scripts to dump data to discover bad or missing data

  40. Tricks and Tips • Development Tools • Color coding editors • vim, Emacs, Visual SlickEdit • IDEs • Windows • Macromedia Dreamweaver • Allaire Homesite • Zend’s PHPEdit • Linux • ???

  41. 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

  42. 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

  43. Questions? • Any Questions • www.php.net • Community • www.phpbuilder.com: articles on PHP, discussion forums • Newsgroups • comp.lang.php

More Related