PHP4 Web Development Solutions
In brief: The book, after some expository material, details 11 projects of increasing complexity. They use PHP, MySQL, PEAR::DB, Smarty and PHPLib. The target audience, according to the book jacket, are programmers who already have a good knowledge of PHP, SQL Databases and XML. Frankly, I think they overdo the amount of experience you need to use and benefit from this book. If you are on top of all those topics well enough to consider yourself "professional" then this book may be too simple. If, on the other hand, you are, like me, conversant with PHP and SQL but would like to take yourself up to "professional" use of technologies like XML, templating and WAP enabling then this book will be good.
What's Good About This Book
The book is stuffed full of code examples -- and while you can download them in a ZIP file of over 3Mb you shouldn't think of this book as a "cookbook" as such. It shows various methods for performing most of the tasks you need to build solid backend web site systems to deal with a large variety of data. The projects cover importing and exporting of XML, messaging systems, forums, content management, using templates for both HTML and WML, search facilities and both simple and complex content management among other topics.
The projects are well designed. I'd have to say that among the 11 projects most web site requirements are covered somewhere. The code is well engineered and some thought has gone into making it readable, understandable and useful. The explanatory material is well written, if too short.
One thing I did appreciate about this book is how much they left out. No coverage of PHP fundamentals, SQL fundamentals and simple stuff like web forms might be covered once, at most. I certainly didn't need another book on my shelves explaining the basics.
What's Bad About This Book
My largest criticism of this book is one shared by too many modern titles for computer programmers; there is too much explanation and too much repetition. The section on SQL is the perfect example. Most projects contain some tables describing each database table, a diagram of the relationships and then the full SQL required to build them, their indices and some example data. For their proposed target audience this is way too much information, and as it is safe to assume that everyone who buys this book has a decent 'net connection, why put a printout of SQL available online in a PHP book? I could have easily written the SQL myself and having it in the book doesn't make it much easier and since it was available online it was a total waste of space.
I also have to take exception to, an (admittedly short) chapter devoted to installing and configuring PostNuke. It gives you no more information on this simple task than the online documentation. As someone who has installed PostNuke a couple of times and never needed any assistance beyond the readme files (and the first was long before I considered myself a good PHP programmer) I felt this was a complete waste of space and not "web development" at all.
My final criticism is once again shared by too many modern titles, there isn't really enough discussion of the design decisions and complications. There are enough code examples and walk throughs to satisfy anyone, but not enough key design decisions are discussed at all, with only a few short examinations of any real design problems. I would have appreciated some walk throughs of such things as code that was too slow, problems with race conditions, methods for mixing static and generated parts of a site and all the real world stuff that intrudes when your site gets slashdotted and that code that was so neat with a hundred visitors a day becomes a thousand. Then show how the code they provide is better, avoids the problems and how to get my code to the same state. Since this book is "professional" a little more real world, please.
You can purchase PHP4 Web Development Solutions from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
I highly recommend that prior to buying this book, you go to the Wrox web site ... to preview the sample chapter. I found that I simply did not like the style of the book. It's "dive-right-in" approach of giving you a bunch of case studies, where each chapter outlines their approach to a particular problem, complete with source code, but with little explanation of techniques. You must register your book before you can download the source to the example code from the Wrox site. I also didn't like the heavy use of the Smarty template engine either. Simply put, I prefer the incremental approach like that of found in other books like "Web Database Applications with PHP & MySQL", by David Lane and Hugh Williams.
Quote from review:
"For their proposed target audience this is way too much information, and as it is safe to assume that everyone who buys this book has a decent 'net connection, why put a printout of SQL available online in a PHP book"
Sometimes its very handy to have things written out in detail. Sometimes you appretiate the extra information given. If you're already browsing through the book you don't want to be interrupted and browse the web to find information. I presume that without the extra information the book would just be smaller.
Both have at least good reviews (I have the 2nd, and I like it a lot). Not sure how them compare against the one of the article, but at least with fewer authors they don't have so much repetitions.
It's personal preference at this point.
When PHP first came out, Perl was the swiss army knife of programming, so I could tie perl, our remedy server, and the web server together and do online reports.
As time went on, it became a bit more cumbersome to work with perl. Mostly because of figuring out how to deal with mod_perl and debugging scripts. I'll admit it - I'm a generally sloppy programmer (which is why I don't do it full time).
PHP gives me a bit more flexibility. It's also becoming a swiss army knife, allowing me to tie a bunch of applications together. But due to the (sloppy) way I code, PHP is better suited to me.
A few years ago I had arguments with a friend over Perl or Python programming for the web. I argued perl, he argued python. At about the same time, we both saw PHP and didn't look back.
I see Wrox is turning up the heat on the PHP book market, and while I understand there are many costs involved in publishing, these larger books are, in many cases, not cost effective.
Wrox has a PHP string handling book coming out, as well as a few others, in the 250-300 page target range. However, I have a feeling these will still be $40+. I'm not sure if Wrox is heading towards ebooks or not, but topics like these deserve to be $15 ebooks, not $45 hardcovers.
PHP has numerous books covering different topics, a professional support organization and training courses. (subtle plugs!) What's next on the horizon?
I see the publisher of phparch.com (good magazine!) has an early PHP->C converter which speeds up code dramatically. Umbrello is a UML modeller for KDE which generates PHP code. I saw refernces to a PHP/Tk/DHTML project, but forgotthe link. Any other cool PHP things people know about?
creation science book
Comment removed based on user account deletion
I think this is good review, better then most that appear here. I think one thing that was left out of this review is more of what is covered in the book. What exactly are you getting? Code examples from projects like PostNuke? What kind of code sample are there? I guess the answer specifically wasn't answered as to what exactly is in the book. I think that kind of information could of been provided into the review without going beyond what a review should cover.
It is nice to see a review of a Wrox book on slashdot. Many review of Wrox books are always about how it is difficult to read because of the many authors that have a hand in the book. Sounds like a well written book maybe even good enough to buy.
I consider my library to be analogous to a carpenter's toolbelt: each book in my library is a tool. How useful the tool is is generally indicated by how often I open up the book to find an answer to a question. I rarely find myself referring back to Wrox books. There are other publishers - namely O'Reilly and Addison-Wesley - whose books I do find myself returning to, over and over. The difference in quality is large.
Wrox books are, in my experience, hastily thrown together collaborative works that do me little good in my day-to-day activities. Your mileage may vary, but I've steered clear of Wrox for the past several months, and I haven't suffered at all.
Bookpool is the best tech book site, hands down.1 007434&Go.x=15&Go.y=13&Go=Go
Affiliate free link: http://www.bookpool.com/.x/a3emp5af6i/ss/1?qs=186
The opposite of progress is congress
All of the code in the book has been written and tested for PHP4.2, but as far as I know all code works fine on the most recent stable version. (register_globals is assumed to be off in the code, btw)
PHP isn't exactly a hard language. I learned it from the online docs at www.php.net and if I had a hard time with a function used google with keywords "function example". I know a lot of others that have done this too.
PHP is also a rapidly developing language, as usually any computer technology is. Print copies will always be chasing it.
Cthulhu Saves.
Actually when they removed automatic setting of get and post variables they broke a ton of PHP 3 example code, and I think it stumped a lot of people with PHP 3 books working with PHP 4.