News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Matthew Weier O'Phinney's Blog:
Proxies in PHP
July 06, 2011 @ 08:10:08

In a new blog post Matthew Weier O'Phinney has taken a look at proxy objects (the Proxy design pattern) and how it differs from some of the other popular patterns.

Of the other patterns mentioned, the one closest to the Proxy is the Decorator. In the case of a Decorator, the focus is on adding functionality to an existing object -- for instance, adding methods, processing input before delegating to the target object, or filtering the return of a method from a target object.

Proxies stand in for objects and have several benefits for your application that may or may not need all of the overhead a full object could cause. Matthew focuses on one benefit in particular - consuming and controlling access to another object. He sets up a problem of wanting to use properties/methods on objects that aren't exposed directly (like a protected method). His solution is a proxy layer class on top of the original object. He includes a few "gotchas" to look out for when using this technique including overwriting all necessary methods and copying over all of the needed properties.

0 comments voice your opinion now!
proxy designpattern object access method property


blog comments powered by Disqus

Similar Posts

Make Me Pulse Blog: Serialize and Unserialize SimpleXML in php

Brian Swan's Blog: Access Control with the Azure AppFabric SDK for PHP

Kevin Schroeder's Blog: Passing typed ActionScript objects to Flex using PHP and a message queue

Michael Nitschinger: Benchmarking Cache Transcoders in PHP

Ross Tuck: Persisting Value Objects in Doctrine


Community Events





Don't see your event here?
Let us know!


zendserver introduction conference laravel list community framework language series code symfony bugfix api podcast deployment threedevsandamaybe interview tips development release

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework