DevShed: Building a Data Validation System with the Prototype Pattern with PHP 5
79883
DevShed has posted the last part of their latest series, a look at using the Prototype pattern in a PHP5 application, Building a Data Validation System with the Prototype Pattern with PHP 5.   Taking into account that this pattern can be helpful in situations where a prototype object is required, along with other clones of it, in this final installment of the series I'm going to demonstrate how to use it to build a simple application for checking the validity of incoming data.   They create a simple validation system with the pattern to check and see if the inputted data is either alpha only or alpha-numeric. On top of this, they create some additional classes to check the data for things like being a valid email address or if the value is made up of all numbers.
437494
Popular posts from PHPDeveloper.org for the past week:PHPClasses.org: A PHP killer feature - Streams abstractionRob Thompson's Blog: Switch vs. IfPHPEverywhere: Octopussy numbers in PHPJob Posting: MODE Visual Seeks PHP Developer (Charlotte, NC)ProDevTips.com: Why PHP as a templating language sucksMatthew Turland's Blog: The Yin and Yang of TypingStubbles Blog: Stubbles 0.5.0 releasedChristopher Jones' Blog: Updated connection pooling in PHP's OCI8 extensionBen Ramsey's Blog: Congrats Costa Rica PHP!Carsten Lucke's Blog: Configuration issues with Xdebug on Debian Etch
647305
Popular posts from PHPDeveloper.org for the past week:Ian Selby's Blog: Uploading Large Files With PHPONLamp.com: Quick and Clean PHP FormsDotVoid.com: Reordering nested sets using PHP and JavascriptRob Allen's Blog: Zend Framework Book Coming SoonCommunity News: php|works Daily Summaries (Day 2)Community News: Sara Golemon & Christopher Jones - First Day Summaries of php|worksJob Posting: University of Wisconsin, Department of Medicine Seeks Web Developer (Madison, WI)Zend Developer Zone: PHP Abstract Podcast Episode 19: Glue Frameworks vs. Full Stack FrameworksStefan Mischook's Blog: Installing PHP and MySQL on the Mac with MAMPSecurityReason: Three Advisories for PHP 5.2.4 (dl, iconv_substr & setlocale)
153871
Latest PHPClasses.org Releases:PHP HTML Graph ClassForm Data CleanerimagebmpWMSServerSharedMem Session HandlingFTP Writer ClassDatabase Connection Classesfile2menuRequestDirectory MatchEasy CronSQL Handling FunctionsPHP JavaScript Tooltip Generator ClassUnit testing classDAOSQL2CSVmabp::request
277396
Lukas Smith has posted his review of a book from Packt Publishing - "PHP Web 2.0 Mashup Projects: Practical PHP Mashups with Google Maps, Flickr, Amazon, YouTube, MSN Search, Yahoo!"   Duane from Pakt asked me if I would be interested in reviewing a few books for them in my blog. I picked "Mashup Projects" from the list of just released books, since I am interesting in the topic and I am actually going to give a presentation at the internal "PHP Day" we are doing at Optaros in November.   He points out the good (good writing style, well-chosen examples) and the bad (a log list of errors and oversights in the code). He also talks about the contents of the book - the different examples and the final more major project. Overall though, he sees it as a good book, one that would be a good introduction to mashups for PHP developers (if you look past the formatting issues).
765764
Devshed is continuing their look at OOP and design patterns (started here) with the second part of the series - a look at the Adapter and Template Patterns. It's another excerpt from Advanced PHP Programming by George Schlossnagle.    You have likely heard of design patterns, but you might not know what they are. Design patterns are generalized solutions to classes of problems that software developers encounter frequently.   To claim that a single chapter on design patterns is in any way complete would be ridiculous. The following sections explore a few patterns, mainly as a vehicle for showcasing some of the advanced OO techniques available in PHP.    They cover the Adapter pattern first, showing how it can be used to create an alternative to an API object (a database layer, in their case). They follow this up with a quick look at the Template pattern, handy to create a set of "hidden" values inside of a extended class.
480439
The PHPClasses.org website has posted their review of a Packt Publishing book covering PDO - "Learning PHP Data Objects" (by Dennis Poppel).   In Learning PHP Data Objects, the author, Dennis Popel, examines this new system and explains how to begin using PDO in development as a replacement for typical database drivers. The book is an excellent introduction to the data abstraction layer. It also provides essential insight into the inner workings of database interaction with PHP.   The review talks about the contents of the book, what PDO is/how it's used and how well the book hits the mark for its target audience.
84867
Tobias Schlitt has a great (long) post responding to a proposal made on the php.internals mailing list for the inclusion of "taint mode" in upcoming PHP versions.   Tobias starts with an overview of what "taint mode" is so that everyone's on the same page. His example involves the incoming and outgoing data usually involved in an application and how the incoming can be the most problematic when it comes to the values inside. This is where taint mode can come to the rescue. At its most basic level, it's a method for, assuming everything coming in is "tainted", creating a mechanism to automatically clean the data before it's even touched.   With the basics down, Tobias looks back to the proposal for a few additional comments. He considers the proposal a great way to introduce the functionality to the language. There are some draw backs he mentions, though, including the additional overhead of working through every inputted value.   Overall, I think this whole thing would be a great addition to PHP and I hope this could come for 6.0. What do you think?   You can also check out some other opinions on the matter:  "Tainted mode" pour php on the Kamelot Blog
663333
Ed Finkler has released the latest version of his Inspekt input filtering/output validation library for PHP5:   I've uploaded the 0.3 release of Inspekt, the input filtering and validation library for PHP4 and 5. With this release, Inspekt completes the goals of the original specification for the OWASP SpoC007 project. I believe it is ready for "real-world" use.   Along with the new code being released there's also more documentation, API docs, a PEAR channel and a mailing list.
104778
Latest PHPClasses.org Releases:Multi-Dimensional Array HandlerMySQL2JSONBBCode ParsersphpcompilerProcessingExponsor ModSimplePagingweb20vnRouterSStatusMagic ArraysqlExecmyAltCaptchaDynamic Methodpreg_magic
769015
Felix Geisendorfer shares, in this new post to the ThinkingPHP blog, some of his experiences with writing his code using test driven development.   So far I've had tons of fun trying to create php code using test driven development. It caused my code to become a lot more structured/consistent because writing the tests shows you interfaces problems right away. This is because the process of writing the test forces you to think a lot more about *how* you want to use some class / piece of code vs. your traditional "how can I get task x done"-thinking.   He also points out another benefit - it makes refactoring the code even easier (so there's more of a likelyhood that you'll use it again and again). He talks specifics about a library that he's been working on and the processes he's gone through to make things work with the testing versus his normal development cycle.
740094
In his travels as a PHP developer, Jamie Wong has gathered some helpful debugging tips that are shared in this latest post to his blog.   Here are some bugfixing rules and tips Iâve learned working all these years with PHP. I emphasize mostly on fixing bugs than preventing them, which is another subject worth of its own article. Iâve moved to Rails, but I wanted to finish this post as a farewell and thanks to every article and documentation that was useful to me. Hope this is useful to you too.   Topics covered include:  Assume nothing Turn Error Reporting to show all errors Read the error message Understand the bug "Scooby-Bug, where are you?" Get as much information as possible  Each has some explanation below it and, in some places, a bit of code to clarify the point.
680477
Jason Gilmore dropped us a line to point out the latest edition of his series on this time focusing on form validation with Prototype and a different framework than before, symfony.   These tutorials focused on the increasingly popular CakePHP framework, however in this installment I'll switch gears a bit and instead examine my preferred framework solution: symfony. Specifically, I'll show you how symfony's built-in support for the Prototype JavaScript framework can greatly enhance the user experience within your applications.   Jason introduces the Prototype library and a simple version of how it's used with a form to do a little validation. The next step is integrating it with something useful - a site built up inside the symfony framework (you'll need to know how to use it already).
152445
Latest PHPClasses.org Releases:Flash MessagesRSS and Atom Feeds Processing APImabp::tagCloudUltimate MySQLerror_managerSingly Linked ListChinese Encode ConvertphpSortableASCII Art GeneratorPSPLMultiselectNiftyCubeAmazon ECS Webservicesimple Email ClassPHPDance
416901
Aaron Wormus has a new note on his blog today about his presentation at this year's Zend/PHP Conference & Expo and another speaker he's excited to hear.    One of the Zend conference sessions that I'm pretty excited about is Don Samisa Abeysinghe's (of WSO2) "Fully Fletched Web Services with PHP".   I'll be presenting a session on "Moving to PHP5 with Style." This tutorial/case study will be based on experience in transitioning several codebases from PHP4 to PHP5, creating unit tests & started a move towards a service based architecture without a complete platform rewrite.    Aaron's talk fits under the banner of the "PHP Development" talks, including others on topics like hosting PHP applications on Windows, working with PDO, unicoding in PHP6, and using PHPUnit.
769389
Latest PHPClasses.org Releases:Class TreeviewPHP User ClassDHTMLDumpSalatCSV Parse and ReadRSAsmb4phpClient infoTrue Singleton ClassRounded Border Table Generator
660553
DevShed continues their series looking at connecting a PHP5 script to the powerful Yahoo! search backend with part four of the series today. This part focuses on reworking some of the previous examples to make them more modular using custom defined functions.   Logically, these examples can be really useful for learning the basic concepts surrounding the use of these search services, but undoubtedly, it's necessary to modify and improve their source code to make it more compact and completely reusable.   They start the overhaul with the web search (complete with example results) then push on to the video and image searches and work them over the same way.