This post originated from an RSS feed registered with PHP Buzz
by Sebastian Bergmann.
Original Post: Current State of AOP for PHP
Feed Title: Sebastian Bergmann
Feed URL: http://sebastian-bergmann.de/
Feed Description: Geek by nature, PHP by choice.
PHPAspect uses a compiler, written in the PHP programming language, that performs static weaving using source code transformations. A downside of this approach is that advantages that stem from PHP's interpreted nature are lost.
Aspect-Oriented PHP uses a preprocessor for the PHP programming language written in Java that is responsible for the weaving of aspect- and base-code. Due to its Java implementation this approach does not integrate seamlessly with the PHP platform.
aspectPHP is a reimplementation of Aspect-Oriented PHP in C, available as a patch against (not as an extension to) PHP 4.3.10.
The AOP Library for PHP requires manual changes to the base-code and thus does not provide obliviousness.
Since I was not satisfied with either of these approaches, I started to work on my own extension for Aspect-Oriented Programming to the PHP Programming Language, AspectPHP, a while ago.