So then, Attribute Oriented Programming (which I will refer to as AOP, despite the obvious clash with Aspect Oriented Programming) is utilising attributes in your code, to achieve extra functionality. Some languages natively support attributes, such as Java (Annotations) or .NET (Attributes). PHP does not natively support such a feature, so this talk will discuss techniques to achieve the same sort of results. The following pages will show first: