PHP Programming Language - Cultural View
PHP Programming Language - Cultural View PHP Programming Language - Cultural View
PHPDoc 176 * "Parses Mr./Mrs. out of $_GET." will * parse a short description of "Parses Mr." * which is rather silly. Long description is * the entire DocBlock description including the * Short desc, and paragraphs begin where p is like: * * The p above denotes a paragraph break */ phpDocumentor will convert all whitespace into a single space in the long description, use paragraph breaks to define newlines, or , as discussed in the next section. DocBlock Description Details In some parsers the long and short description of a DocBlock is parsed for a few select HTML tags that determine additional formatting. Because not all HTML is allowed, they will generally be converted into plain text or more content specific tags. For example, a tag may be converted into in DocBook. Here is a list of tags supported by phpDocumentor: • -- emphasize/bold text • -- Use this to surround php code, some converters will highlight it • -- hard line break, may be ignored by some converters • -- italicize/mark as important • -- denote keyboard input/screen display • -- list item • -- ordered list • -- If used to enclose all paragraphs, otherwise it will be considered text • -- Preserve line breaks and spacing, and assume all tags are text (like XML's CDATA) • -- denote sample or examples (non-php) • -- unordered list • -- denote a variable name For the rare case when the text "" is needed in a DocBlock, use a double delimiter as in . phpDocumentor will automatically translate that to the physical text "". Using and Both and ignore any HTML listed above (except for their closing tags). DocBlock Templates The purpose of a DocBlock template is to reduce redundant typing. For instance, if a large number of class variables are private, one would use a DocBlock template to mark them as private. DocBlock templates simply augment any normal DocBlocks found in the template block. A DocBlock template is distinguished from a normal DocBlock by its header. Here is the most basic DocBlock template: /**#@+ * */
PHPDoc 177 The text that marks this as a DocBlock template is "/**#@+" - all 6 characters must be present. DocBlock templates are applied to all documentable elements until the ending template marker: /**#@-*/ Note that all 8 characters must appear as "/**#@-*/" in order for phpDocumentor to recognize them as a template. Page Level DocBlocks A page-level DocBlock is the only DocBlock that cannot precede the element that it is documenting, as there is no way to precede a file. To solve this issue, the way phpDocumentor finds a page-level DocBlock is to parse the first DocBlock in a file as the page-level DocBlock, with certain conditions. This last example has one DocBlock, and it is the first DocBlock in a file, but it is not a Page-level DocBlock. How can phpDocumentor tell the difference between a Page-level DocBlock and any other DocBlock? Simple: * Page-level DocBlock is here because it is the first DocBlock * in the file, and contains a @package tag * @package pagepackage */ define("almost","Now the Page-level DocBlock is for the page, and the Define has no docblock"); In phpDocumentor version 1.2.2, a Page-level DocBlock is the first DocBlock in a file if it contains a @package tag. However, this example will raise a warning like WARNING in test.php on line 8: Page-level DocBlock precedes "define almost", use another DocBlock to document the source element. You can eliminate the warning by adding documentation to the define as follows:
- Page 131 and 132: Midgard (software) 125 Midgard (sof
- Page 133 and 134: Midgard (software) 127 See also •
- Page 135 and 136: Midgard Lite 129 Midgard Lite Midga
- Page 137 and 138: MindTouch Deki 131 History MindTouc
- Page 139 and 140: MindTouch Deki 133 Users of the Com
- Page 141 and 142: Moodle 135 Moodle Moodle course scr
- Page 143 and 144: Moodle 137 show, it has been cited
- Page 145 and 146: Moodle 139 See also • Learning ma
- Page 147 and 148: MyBB 141 MyBB A default installatio
- Page 149 and 150: MyBB 143 free software released und
- Page 151 and 152: NETSOFTWARE 145 Structure of compan
- Page 153 and 154: User:Nichescript/Affiliate Niche Sr
- Page 155 and 156: Ning (website) 149 Feature modifica
- Page 157 and 158: Ning (website) 151 [11] http://blog
- Page 159 and 160: NolaPro 153 In May 2005, NolaPro wa
- Page 161 and 162: ocPortal 155 ocPortal Developer(s)
- Page 163 and 164: ocPortal 157 Version history • Ma
- Page 165 and 166: Open Realty 159 References [1] Open
- Page 167 and 168: Opus (content management system) 16
- Page 169 and 170: osCommerce 163 osCommerce Developer
- Page 171 and 172: osCommerce 165 Branches Distributed
- Page 173 and 174: PEAR 167 External links • The PEA
- Page 175 and 176: PHP syntax and semantics 169 Colon
- Page 177 and 178: PHP syntax and semantics 171 } { $d
- Page 179 and 180: PHPClasses repository 173 PHPClasse
- Page 181: PHPDoc 175 markup for display forma
- Page 185 and 186: PHPDoc 179 @static Documents a stat
- Page 187 and 188: PHPEclipse 181 Further reading •
- Page 189 and 190: User:Papagel/EFront (eLearning soft
- Page 191 and 192: Phalanger (compiler) 185 Phalanger
- Page 193 and 194: pHAML 187 pHAML Developer(s) David
- Page 195 and 196: pHAML 189 Hello World Hello W
- Page 197 and 198: Phoca Gallery 191 References [1] ht
- Page 199 and 200: PHP 193 PHP Paradigm imperative, ob
- Page 201 and 202: PHP 195 Licensing PHP is free softw
- Page 203 and 204: PHP 197 Security The National Vulne
- Page 205 and 206: PHP 199 $adder = getAdder(8); echo
- Page 207 and 208: PHP 201 Speed optimization PHP sour
- Page 209 and 210: PHP 203 [18] "GoPHP5" (http://gophp
- Page 211 and 212: HipHop for PHP 205 HipHop for PHP D
- Page 213 and 214: PHP-GTK 207 PHP-GTK Developer(s) An
- Page 215 and 216: PHP-GTK 209 External links • Offi
- Page 217 and 218: PHP-Nuke 211 • News—Manages new
- Page 219 and 220: Php4delphi 213 Php4delphi Appeared
- Page 221 and 222: phpDocumentor 215 phpDocumentor Sta
- Page 223 and 224: PhpGedView 217 PhpGedView can be ex
- Page 225 and 226: phpLDAPadmin 219 phpLDAPadmin Origi
- Page 227 and 228: phpMyAdmin 221 Release 0.9.0 Septem
- Page 229 and 230: phpMyAdmin 223 References [1] http:
- Page 231 and 232: phpPgAdmin 225 phpPgAdmin Stable re
<strong>PHP</strong>Doc 176<br />
* "Parses Mr./Mrs. out of $_GET." will<br />
* parse a short description of "Parses Mr."<br />
* which is rather silly. Long description is<br />
* the entire DocBlock description including the<br />
* Short desc, and paragraphs begin where p is like:<br />
* <br />
* The p above denotes a paragraph break<br />
*/<br />
phpDocumentor will convert all whitespace into a single space in the long description, use paragraph breaks to<br />
define newlines, or , as discussed in the next section.<br />
DocBlock Description Details<br />
In some parsers the long and short description of a DocBlock is parsed for a few select HTML tags that determine<br />
additional formatting. Because not all HTML is allowed, they will generally be converted into plain text or more<br />
content specific tags. For example, a tag may be converted into in DocBook.<br />
Here is a list of tags supported by phpDocumentor:<br />
• -- emphasize/bold text<br />
• -- Use this to surround php code, some converters will highlight it<br />
• -- hard line break, may be ignored by some converters<br />
• -- italicize/mark as important<br />
• -- denote keyboard input/screen display<br />
• -- list item<br />
• -- ordered list<br />
• -- If used to enclose all paragraphs, otherwise it will be considered text<br />
• -- Preserve line breaks and spacing, and assume all tags are text (like XML's CDATA)<br />
• -- denote sample or examples (non-php)<br />
• -- unordered list<br />
• -- denote a variable name<br />
For the rare case when the text "" is needed in a DocBlock, use a double delimiter as in . phpDocumentor<br />
will automatically translate that to the physical text "".<br />
Using and <br />
Both and ignore any HTML listed above (except for their closing tags).<br />
DocBlock Templates<br />
The purpose of a DocBlock template is to reduce redundant typing. For instance, if a large number of class variables<br />
are private, one would use a DocBlock template to mark them as private. DocBlock templates simply augment any<br />
normal DocBlocks found in the template block.<br />
A DocBlock template is distinguished from a normal DocBlock by its header. Here is the most basic DocBlock<br />
template:<br />
/**#@+<br />
*<br />
*/