Professional PHP Programming

ISBN 1-861002-96-3  Price £35.99 UK
Jesus Castagnetto  Harish Rawat  Sascha Schumann
Chris Scollo  Deepak Veliath

       22 Chapters, 8 Appendices and Index in 893 pages

Chapter List

        1    What is PHP ?
        2    Installing and Configuring PHP
        3    Programming in a Web Environment
        4    Variables, Constants and Data Types
        5    Operators
        6    Statements
        7    Functions
        8    Arrays
        9    Object-Oriented Programming
        10  String Manipulation
        11  File Handling and Data Storage
        12  PHP and SQL Databases
        13  PHP and LDAP
        14  XML
        15  Image Generation and Manipulation
        16  PHP Connectivity
        17  Sending and Receiving e-mail
        18  Cookies
        19  Debugging and Error Handling
        20  Security
        21  Magic with Quotes
        22  Templates
        Case Study 1:  Shopping Cart Application
        Case Study 2:  Phorum Discussion Software
        Case Study 3:  e-mail Application
        Case Study 4:  Database Browser
 

    Appendix A
        PHP Functions

    Appendix B
        PHP4 and Zend

    Appendix C
        The Wrox Ultimate HTML Database Listing

    Appendix D
        HTTP Request and Response

    Appendix E
        Regular Expressions

    Appendix F
        Open source Software

    Appendix G
        Resources

    Appendix H
        Support and Errata

        Index
 

Synopsis

PHP has come a long way.  It can be used to produce all sorts of web based applications and utilities.  Professional PHP Programming explains what to do with PHP and even suggests new ideas that you might not have even heard of.  PHP can be used as either a standalone CGI interpreter or as an Apache module.  It is much more sophisticated than most people think it is.

Review

There have been few times in my life when I have seen something which compared with looking at my first train set.  This particular book had a similar effect on me.  It makes PHP programming so easy to understand.  Don't leave it alone on a table it will disappear.

After the initial explanation about PHP there is a chapter that gives invaluable information about installing and configuring PHP.   This has saved the lives of many sys admins who can't make head or tail of the documents that come with most open source software.  It's nice to know that the cryptic clues that are in most man pages are not seen to be a part of PHP.  Someone has finally changed their habits of a lifetime ?  There is even a section on configuring the WIN32 version.  Programming in a web environment is also something of a bonus.

All of the chapters to do with variables, constants, data types, operators, arrays and so on are the kind of thing that should be shown to everyone.   One of the early examples at page 93 is Building an Online Job Application form.  As always Wrox give you an example of the code........
 

" [begin quote]
<HTML>
<! -- jobapp.html -- >
        <BODY>
                <H1>Phop's Bicycles Job Application</H1>
                <P>Are you looking for an exciting career in the world of cycling ?
                    Look no further !
                </P>
                <FORM NAME= ' frmJobApp '  METHOD=post  ACTION= " jobapp_action.hph ">
                    Please enter your name :
                    < INPUT NAME= " applicant" TYPE= "text" ><BR>
                    Please enter your telephone number :
                    < INPUT NAME= "phone " TYPE= "text " ><BR>

                    Please select the type of position in which you are interested :
                    <SELECT NAME= " position " >
                         <OPTION VALUE= " a " >Accounting </OPTION>
                         <OPTION VALUE= " b " >Bicycle repair</OPTION>
                         <OPTION VALUE= " h " >Human resources</OPTION>
                         <OPTION VALUE= " m " >Management</OPTION>
                         <OPTION VALUE= " s " >Sales</OPTION>
                    < / SELECT><BR>

                    Please select the country in which you would like to work :
                    <SELECT NAME= " country " >
                         <OPTION VALUE= " a " >Accounting </OPTION>
                         <OPTION VALUE= " a " >Accounting </OPTION>
                         <OPTION VALUE= " a " >Accounting </OPTION>
                         <OPTION VALUE= " a " >Accounting </OPTION>
                         <OPTION VALUE= " a " >Accounting </OPTION>
                    < / SELECT><BR>

                   < INPUT NAME= " avail " TYPE= " checkbox " > Available immediately <BR><BR>
                    < INPUT NAME= " enter " TYPE= " submit "  VALUE=" Enter " >
                 <?FORM>
          <BODY>
< / HTML>
" [end quote]

All Wrox Press books are laid out in this way and it does make them easy to understand.   After this we go into the explanation of how PHP interacts with servers and other applications on those servers.  SQL databases, LDAP, XML and even Phorum and e-mail connectivity are discussed.  Phorum is the bulletin board software that we use on the ShefLUG site for long term announcements.  Click on Phorum on the front page.  You'll be able to see just how sophisticated it really is.

The section on PHP and SQL databases is particularly useful with lots of detailed code examples and many tips on how to get everything to work the way you want it.  PHP and LDAP gives similar help.  Very useful for those people who haven't really used LDAP in anger so far.  The section on XML is absolutely invaluable and is worth its weight in gold.  As not much is known about XML with Unix or Linux this is as good a way to learn as any.  There is even a bit about Web-Enabling Enterprise Applications.  You could save your company a great deal of money with this ?  This, combined with image generation and manipulation,  provides the adaptability and reliability that you might have been looking for.  Here it's shown how any HTML based web browser can view XML with the help of PHP acting as the converter for the code.

The Debugging and Error Handling chapter is extremely useful.  If we were to believe that all software would work first time out then we wouldn't be good programmers ?  The Security section is a good deal more sensible than most of the MS Windows books that pretend that Microsoft know anything about security or software (which they don't and never will).

The case studies at the end of the book finish off what can only be described as a finely hand made mahogany and hand polished piece of furniture that you would want to keep for a long time.  I'll show something about case study 2 here.  Phorum discussion software.  As the case study says " Why PHP ? "  .....  and the answers are......
 


The summary at the back of the case study says.....

" Phorum is a bulletin board application that makes good use of PHP and what it has to offer.  It is a  growing open source project that anyone can use to add a message forum to their web site, where the site's users can post messages to exchange information.  It demonstrates the potential that lies in well written PHP code. "

The final part of the book shows PHP functions and gives some equivalents for PHP 4 so that you can use that as well.

If you want a general web application that does it all then you should use PHP.  It connects and interacts with everything that is available and is yet to be made available for the internet.  The future is bright, the future is PHP.  Buy the book.  Change your life.  Become a better person.
 

Review by Richard Ibbotson