Well I was wondering what naming convention PHP programmers normally use. It seems that there is not a universally accepted pattern here, but I do believe one or two of them are more favorable than the others?
Mine is actually quite simple. Here is a description of it, you can skip this part if you aint interested. This topic is for discussing naming convention though.
My class names are all noun that models real entity, concrete classes sometimes have a portion of their parent abstract class' names. For instance, the UserContainer and ItemContainer concrete classes both extend Abstract Container class. I do not have special naming patterns for final classes though.
On the other hand my interface names are so far all adjective with specific suffix. The suffix -ive usually implements a method a class can do, while the suffix -able usually implements a method a class can be done. Good example is Creative and Creatable for factory methods. The former is used by factory classes with create() method, while the latter is used by classes whose instances can be created through factory classes with a getCreator() method that reference to its 'production factory'.
I have yet to begin using namespace yet, will give a try in a few weeks. I am running PHP 5.3.x so I aint gonna worry about Trait for this time being, but I know naming will be more complicated once we are adding lots of trait to our projects?
I believe the naming convention I use is quite common in object oriented programming languages such as Java, in which noun and adjective are used for class and interface names. I also heard that some programming languages use the prefix method in which each abstract class begins with a prefix A and each interface begins with a prefix I. How many of you are advocate for this pattern? At the very last I recall some frameworks such as Zend and Symfony simply add a long suffix such as -Abstract and -Interface, not sure if it is really a good idea or not?