PHP revision ... by example.
It's a big step from a few lines of PHP in a website which flashed up "Message of the day" ... to a system which computes results and looks up data dynamically ... to a system which requires pages to be linked together into an application ... to a system which requires access to back end data feeds ... and to a system which requires test and development and deployment servers, requires data caches for high volume, and requires audit control on the various release levels maintained by a many-person team across a wider organisation. But as an underlying base, you'll still have the basic PHP syntax and concepts.
This coming week, I'm presenting a private course that looks at how many of those more advanced aspets are tackled within one particular organisation. For starters, though, there's a requirement to make sure that all my delegates are up to speed on the basics. So here are some revision points:
• PHP is an open source general-purpose server-side scripting language originally designed for Web development to produce dynamic Web pages.
• It can also be run in other environments such as stand alone though originator Rasmus Lerdorf says the priority on features is for web use.
• PHP originally stood for "Personal Home Pages" and ran on "A Patchy Server", but who's going to commit his business to products with such names?
• PHP is now the PHP Hypertext Protocol, usually running under the Apache httpd server.
Key coding attributes:
• operator and operand based language
• ; separate statements and { to } blocks of code (like C)
• dynamic variable typing and memory allocation (unlike C)
• variable names start with a sigil (a $ character) to say "this is a variable"
• Comments start with # or // to end of line, or /* to */
• Code runs within <?php to ?> tags - outside that, code is echoed to output
• classic while, if and for statements, assignments, tests, etc
First example, showing classic coding,
[here].
• Collection variables in PHP are known as arrays, but are actually ordered maps.
• they can be treated as an array, list (vector), hash table (an implementation of a map), dictionary, stack, queue, etc.
• array values can be other arrays, so trees and multidimensional arrays are possible.
• Use squarebrackets for indexing into an array
Second example, with a demonstration of both indesed and keyed (associative) arrays -
[here].
• functions are named blocks of code
• passing parameters in by position, optional and by name
• variables default to being local to function
• variables can be declared as global or static
• Also note superglobal variables such as $_POST
Third example, with functions,
[here].
These examples - you'll see the links above - are also avaialable from the new year on our public
Object Orientation in PHP and
PHP Techniques courses. They help ensure, in just half an hour or so, that everyone's up to speed with the basics and that any little gaps in knowledge are identified and fixed for second level courses.
Part 2 of this revision session - covering Object Orientation in PHP - may be found
[here].
(written 2012-12-15, updated 2012-12-22)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
H300 - PHP Revision [1615] PHP training courses every month - (2008-04-18)
[1787] Howto - write and manage a news box on your web page - (2008-09-06)
[2742] A simple server benchmark script - (2010-04-27)
[3953] Objects in PHP - Revision - (2012-12-16)
[4050] A couple of new fast-start PHP examples - (2013-03-21)
H050 - PHP - General [116] The next generation of programmer - (2004-11-13)
[235] Preparation for a day's work - (2005-03-04)
[1722] PHP examples - source code and try it out too - (2008-07-26)
[2097] PHP Course - for hobby / club / charity users. - (2009-03-22)
[2222] A (biased?) comparison of PHP courses in the UK - (2009-06-07)
[2227] Learning PHP, Ruby, Lua and Python - upcoming courses - (2009-06-11)
[2400] Are you wanting to learn PHP? - (2009-09-08)
[2430] Not just a PHP program - a good web application - (2009-09-29)
[2504] Learning to program in ... - (2009-11-15)
[2559] Moving the product forward - ours, and MySQL, Perl, PHP and Python too - (2010-01-01)
[2589] Your PHP code does not work? Here is where to start looking. - (2010-01-18)
[2663] Improve your PHP on a weekend away - (2010-03-05)
[3025] Learning to Program ... in PHP. Course examples. - (2010-11-01)
[3530] A typical weekend?? - (2011-11-28)
[3966] Our examples work with any recent version of PHP - (2013-01-01)
[4314] PHP training - refreshed modern course, backed up by years of practical experience - (2014-11-16)
Some other Articles
Zend / layout of MVC and other files in an example application (PHP)Building up from a small PHP setup to an enterprise one Lesson 1 in programing - write clean, reuseable and maintainable tidy codePHP revision ... by example. Christmas Bus Schedule for Melksham - First Bus10 reasons why I travel the night before a course startsMelksham Spa from Woolmore FarmQuiet little town? Advanced Technology Centre?this or self - what are they, and what is the difference? (Python)