I currently use such order of annotations:
Code 1:
/**
* sets elements for main (top), secondary (sub1) level and tertiary (sub2) level;
* prevents sharing of content with previous instances
*
* @param string $TopElement
* @param string $SubElement1
* @param string $SubElement2
*
* @return void
*
* @throws MarC_Exception if top element was not set
* @throws MarC_Exception if sub1 element was not set
* @throws MarC_Exception if sub2 element was not set
* @throws MarC_Exception if all elements were set the same
*/
public function __construct($TopElement="", $SubElement1="", $SubElement2="")
{
...
}
Code 2:
/**
* elements used for creation of code
*
* @static
* @var array
*/
protected $Elements = array();
Code 3:
/**
* @package ...
*
* @author ...
* @copyright ...
*
* @license ...
*
* generation of advanced select menu
*/
At this time i don't use all annotations (probably all I use you can see in codes above).
And I wonder if in php is any suggested (preffered) order of annotations - or it is free matter of programmer (and then this question will be useless).