Handling File Data with the Facade Pattern in PHP 5 - Putting all the classes to work together
(Page 4 of 4 )
In this final section of the article, I’d like to show you how all the classes that I created previously can be put to work conjunctly. In this manner I'll demonstrate the neat functionality offered by the already familiar facade pattern.
Below I set up a short example. It shows the output generated by the pertinent file processing class, and the different results displayed by the respective facade class.
Having said that, here the complete source code that corresponds to the hands-on example in question:
// example using 'ProcessContentFacade' class
try{
// instantiate new 'FileProcessor' object
$fileProc=new FileProcessor();
// write data to file
$fileProc->writeData();
// read and display file data before using
// 'ProcessContentFacade' class
echo $fileProc->readData();
/*
displays the following:
This string of data will be saved to file!
*/
// reverse and uppercase file data by using
// 'ProcessContentFacade' class
$processedData=ProcessContentFacade::
processContent($fileProc->readData());
echo $processedData;
/* displays the following:
!ELIF OT DEVAS EB LLIW ATAD FO GNIRTS SIHT
*/
}
catch(Exception $e){
echo $e->getMessage();
exit();
}
Without a doubt, after studying the above example, you’ll realize that implementing the facade pattern with PHP 5 is indeed a straightforward process that can be performed with only minor troubles. As usual, feel free to incorporate your own modifications to all the classes that were shown in this article. Doing so will help you acquire a more intimate grounding in how this design pattern works. Happy coding!
Final thoughts
Sadly, this is the end of this series. Over the course of these two tutorials, I introduced the fundamentals of how to apply the facade pattern in PHP 5. If you spend some time and practice with the examples that I provided you here, I’m pretty certain that you’ll end up having a reasonable experience on this pattern in particular.
See you in the next PHP tutorial!
| DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware. |