CDN$ 18.04
  • List Price: CDN$ 42.23
  • You Save: CDN$ 24.19 (57%)
FREE Shipping on orders over CDN$ 25.
Only 1 left in stock (more on the way).
Ships from and sold by Amazon.ca.
Gift-wrap available.
Quantity:1
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

PHP Object-Oriented Solutions Paperback – Aug 21 2008


See all formats and editions Hide other formats and editions
Amazon Price New from Used from
Paperback
"Please retry"
CDN$ 18.04
CDN$ 18.04 CDN$ 12.49

Best Canadian Books of 2014
Margaret Atwood's stunning new collection of stories, Stone Mattress, is our #1 Canadian pick for 2014. See all

Customers Who Bought This Item Also Bought



Hero Quick Promo
Boxing Day Kindle Deals
Load your library with over 30 popular fiction books and more, today only. Learn more

Product Details

  • Paperback: 392 pages
  • Publisher: friends of ED; 1 edition (Aug. 21 2008)
  • Language: English
  • ISBN-10: 1430210117
  • ISBN-13: 978-1430210115
  • Product Dimensions: 19 x 2.3 x 24.1 cm
  • Shipping Weight: 680 g
  • Average Customer Review: 1.0 out of 5 stars  See all reviews (1 customer review)
  • Amazon Bestsellers Rank: #541,177 in Books (See Top 100 in Books)

Product Description

About the Author

David Powers is an Adobe Community Expert for Dreamweaver and author of a series of highly successful books on PHP, including PHP Solutions: Dynamic Web Design Made Easy (friends of ED, ISBN-13: 978-1-59059-731-6) and Foundation PHP for Dreamweaver 8 (friends of ED, ISBN-13: 978-1-59059-569-5). As a professional writer, he has been involved in electronic media for more than 30 years, first with BBC radio and television and more recently with the Internet. His clear writing style is valued not only in the English-speaking world; several of his books have been translated into Spanish and Polish.

What started as a mild interest in computing was transformed almost overnight into a passion, when David was posted to Japan in 1987 as BBC correspondent in Tokyo. With no corporate IT department just down the hallway, he was forced to learn how to fix everything himself. When not tinkering with the innards of his computer, he was reporting for BBC TV and radio on the rise and collapse of the Japanese bubble economy. Since leaving the BBC to work independently, he has built up an online bilingual database of economic and political analysis for Japanese clients of an international consultancy.

When not pounding the keyboard writing books or dreaming of new ways of using PHP and other programming languages, David enjoys nothing better than visiting his favorite sushi restaurant. He has also translated several plays from Japanese.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

1.0 out of 5 stars
5 star
0
4 star
0
3 star
0
2 star
0
1 star
1
See the customer review
Share your thoughts with other customers

Most helpful customer reviews

0 of 1 people found the following review helpful By Queequeg on Nov. 27 2010
Format: Paperback
Reading this book won't help you acquire knowledge but only a few simplistic recipes (at best). Chances are you will throw the book in disgust well before reading the second recipe. The reason is these recipes are written in a style that is excruciatingly simplistic: repetition of boilerplate formulas and expressions abound; lots of paragraphs make up for just space-filling useless reading (like the explanation of where to find the examples and how to write and test your code: author keeps repeating the same boilerplate text until the end of the book! Maddening!). Plus, it was obvious to me from the first chapter (or indeed the first few pages) that the author is not at all versed in programming, even less in the Object-Oriented paradigm, but has probably discovered he too can "write" Web applications just by catching up to the skills required on "w3scools"! And this is what he wants to teach you, the reader. Not very reassuring. Avoid the expense. Read the PHP manual, which still is in my opinion the only source (unfortunately) of reliable PHP training material.
Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again.

Most Helpful Customer Reviews on Amazon.com (beta)

Amazon.com: 25 reviews
20 of 22 people found the following review helpful
Not a beginners book for understanding PHP OOP Jan. 20 2011
By David Crisler - Published on Amazon.com
Format: Paperback Verified Purchase
I have learned a lot over the years from David Powers' books on PHP and Dreamweaver. They were the first books on PHP that I purchased and read. I have since read PHP books by other authors and one criticism I have formed is that Mr. Powers, while extremely knowledgeable, has a tendency to get very complicated. He introduces a concept, but then that concept depends on 2 more concepts that contain "gotchas" that need further explanation etc., etc., until the excitement you felt in approaching the original concept gets lost down a spiral of minutia and complexity that - although important - can be detrimental to the shaky confidence of a true beginner. Being thorough is great, but not so thorough that you overload those you are trying to teach. Never is this more apparent than PHP Object-Oriented Solutions. I have completed the first 3 chapters and they were quite a struggle! My brain hurt. I don't understand why there wasn't an attempt to start out with MUCH simpler classes. Maybe a short, easy database connection class or something. Instead, the first class is a Date class and Mr. Powers goes into all manner of complexities, starting with an exhaustive dissection of PHP's DateTime and DateTimeZone classes, then extending the DateTime class and understanding how to deal with leap years, adding dates while accounting for different amounts of days per month, ect., which to me - although a very useful and well thought-out class - just added layers and layers of mental complexity right at the beginning, and made it much more difficult than it should have been for a fledgling OOP fawn struggling to learn syntax, structure, usage, etc.

There are some basic examples in Chpt 2, but there needs to be a smoother transition from those to the intense, tangled complexity of the other chapters.

So in all honesty, I cannot recommend this as a "gentle introduction" to the PHP OOP world. It is more like dropping you into the deep end and hoping you learn to swim. I would love to see a book that starts with a simple, basic class and then extends it through subsequent chapters, while introducing OOP theory along the way. I did not like how all the theory was crammed into one VERY dense chapter at the beginning of the book (chpt 2).

Having said all that, I think if you approach this book as a "solutions" book more than a "gentle introduction" it has some great benefit to those who are able to comprehend the level of complexity and make use of the classes offered. Certainly this is evidenced by the many positive reviews here.

For me, however, it got too complex, too soon. I am still looking for that "gentle introduction". If anyone knows a more basic book on the subject, please let me know.
9 of 10 people found the following review helpful
Best way to learn OOP in PHP Oct. 19 2009
By Maarten v K - Published on Amazon.com
Format: Paperback
I have read a few books on OOP (there is always something new to learn), but this one is the best by far.
Good constant level of complexity; not too abstract, not too easy, but something to put your teeth in, sweat a little, but in the end come to a good understanding of the subject without frustrations.
There are many examples following the to the point explanations. It's always a challenge for an author I guess to address the reader at a good adequate level to hold his/her attention. Knowing where the bottlenecks are. Giving a concrete example when it start to become abstract. Offering meaningful cases. The author does al that!
This book is a real must for anybody who wants too start learning OOP from the beginning, although it's recommendable to know a good deal of (procedural) php when starting with this book.
3 of 3 people found the following review helpful
If you wanna be sure to get it... here's the way. Oct. 8 2009
By Maria E. Judge - Published on Amazon.com
Format: Paperback Verified Purchase
The book is pretty straight foward, and presents the subject matter in a down to earth, understandable way. Plus it's well organized so it makes a rather handy reference as well. If I had to gripe about one thing it's the quantity of information in the book. It's a great book, don't get me wrong, but I would have loved for it to keep going. Help me understand more. Perhaps another volume is on the way?
9 of 12 people found the following review helpful
Great book to learn PHP OOP and practice OOP June 27 2010
By Quoc Doan - Published on Amazon.com
Format: Paperback Verified Purchase
Alright, since amazon kept on complaining about review (slow reader).

Warning:
I've read 7 out of 9 chapters. Chapter 8 and 9 are in the back burner for now, not because it's boring, but I think it's more optional or things to learn later. My background is C/C++/VHDL/MIPS/ and whatever else I forgot to mention.

Codes in the book works!
Almost all of it. There's a small typo on page 159, the code assign a value to an array without specifying the index, so I believe that rewrite the array. Checking it with the source code, which you can download from the website, the author actually have something different. Anyway, took 3 hours to debug 300 lines or so, learned to debug better yay. There are so much codes in the book, that it gives you chances to practice the OOP that the author is trying to teach you, and it's very applicable to real world coding.

Tone and pace:
The tone and the pace the author goes throughout the book is straight forward. Whenever he skipped something he would state that you should have learned it or go research it (the regular expression functions), which is understandable because this isn't a "let's teach you php as if you know nothing about it."

OOP:
You learned to extend/inherit the php's offical date class. Learn how to extend the exception library, neat. You basically learn how to extend and customize php built in libraries or create a class to wrap php functions, facade pattern, and make it tailor to you, so that you can reuse it in your next project, and make your life easy. OOP, ahh such a beautiful concept.

The last three or so chapters are more advance, XML, SPL (standard php library), RSS, and such. What really sweet is the later chapter reuses the classes that you've code in previous chapters. So it shows the strength of OOP (reusability) and such.

On page 195, it's out dated the function does return a message so the if else statement isn't needed but meh.

On page 239 regarding XML namespace, since php 5.3 came out is there another way to do it? Shrug, it doesn't matter that much the way the author does it in the book currently isn't that bad. I wish the author spent his time talking more about the concept of namespace. I ended up googling that.

Oh, the clone subject is mention but isn't use in real world coding. That's a complaint I guess. I wish there was a least a 300 lines code project with the clone keyword in it. I believe it was only mention once about dvd and whatnot code. Oh well. Maybe it's in the last 2 chapters?

Oh debugging is always fun. On the date class when I had to reuse my date class for the XML chapter, the date output had the day and the month together without a space in between it. Ugh... had to debug that 400+ lines -_-. Learned to start debugging all output functions first haha.

Coding Standard and Documentation:
What's also nice is there's a coding standard, the Zend Framework coding standard, so if you don't have a coding style yet, at least you got one now. The phpDocument is pretty sweet, teaches you to document your code so other people can read it. Anyway, the installation of phpDocument isn't exactly there, so google it.

Summary:
This is THE book where I've learned OOP for PHP. It's a great book and I enjoyed it a lot. No book is perfect but this book set out to teach you something, and it does that well enough to get almost ALL of the points across to ya. I recommend this book to any one that knows PHP but knows nothing about OOP. If you want to make your life easy, have maintainable codes, and reusable codes, this book will teach you it.

Update July 19, 2010:
Chapter 8
Basically teaches you how to emulate multiple inheritance with interfaces.
You end up extending a class and at the same time implementing two interfaces (countable & iterator).

Complaints:
-The closing xml tag code explanation could have been better if the author refer to it being similar to a "stack". The most current XML element tag you created is the first thing that you close.

-The last test code to test out your class work or not will always output, "A problem occurred." Because the flush() function returns nothing! It's not in the errata page. A little tweak and you can have it return a bool flag if you wanted to. This isn't reported in the errata page and you can see it's an error because the official source code will do the same thing.

-Even though the author had you implementing the countable interface you don't use it at all. You can however test it out yourself. Just apply the class instance to the function .count(). So it's not that big of a deal.

Anyway, I actually found the errata page. I have to say then most of the code works if it didn't then it's either syntax or the elusive logic error.
2 of 2 people found the following review helpful
Aimed at Experienced Procedural PHP Programmer March 5 2014
By Stephanie Sullivan - Published on Amazon.com
Format: Kindle Edition Verified Purchase
I've been programming php since it was still phpfi. I built my chops on procedural programming and that's my comfort zone. But times have long changed and the advantages of object oriented programming (oop) are plentiful. For those of us indoctrinated in procedural programming disciplines the transition to oop and the related changes in thinking on how to design solutions can be challenging.

PHP Object-Oriented Solutions is a good bridge from procedural to oop methodologies. I found there was enough context and a focus on practical examples to illustrate the principles without it seeming too theoretical. For me the progression of topics from basics to more advanced topics allowed me to get started using what I'd learned in just a couple of chapters. By putting the simple stuff into practice it helped build the contextual foundation for more advanced topics.

This book has gotten me out of my old comfort zone and producing php objects I can use over and over, extend and enhance.

If you are a novice programmer or just dabbling in php this might not be the best book. It presumes some experience and for the experienced programmer builds a procedural to oop bridge. A novice programmer may find this book difficult to understand as it assumes a working knowledge of php and programming in general.

For teaching this "old dog" new tricks PHP Object-Oriented Solutions gets 5 stars from me.


Feedback