phpdocumentor 1.2.2 manual

848
PhpDocumentor 1.2.2 Manual Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Upload: freddy-plata-antequera

Post on 01-Nov-2014

83 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: PhpDocumentor 1.2.2 Manual

PhpDocumentor 1.2.2 Manual

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 2: PhpDocumentor 1.2.2 Manual

Contents

phpDocumentor Guide to Creating Fantastic Documentation 1 http://phpdocu.sourceforge.net Tutorial 3Documentable PHP Elements 21phpDocumentor Tutorials 26 http://phpdocu.sourceforge.net Manual 32phpDocumentor tags 34@abstract 36@access 37@author 38@category 39@copyright 40@deprecated 41@example 42@final 44@filesource 45@global 46@ignore 48@internal 49@license 50@link 51@name 52@package 53@param 55@return 57@see 59@since 61@static 62@staticvar 63@subpackage 64@todo 66@tutorial 67@uses 69@var 72@version 73phpDocumentor Inline tags 74inline {@id} 76inline {@internal}} 78inline {@inheritdoc} 79inline {@link} 81inline {@source} 83inline {@toc} 87inline {@tutorial} 89

Writing a New Converter 91

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 3: PhpDocumentor 1.2.2 Manual

Converter Default Template Variables 96Writing a Converter, Methods 101

Converter Manual 107

Writing templates for the CHMdefault Converter 110

Writing templates for the HTMLframes Converter 111

Writing templates for the HTMLSmarty Converter 117

Writing templates for the PDFdefault Converter 118

Using the PDFParser XML templating language 119

Writing templates for the XMLDocBook Converter 121

Package phpDocumentor Procedural Elements 123actions.php 123builder.php 124config.php 125utilities.php 126

Function getDir 126Function htmlArraySelect 126Function recurseDir 126Function showImage 126Function switchDirTree 126Function vdump_par 126

top.php 127phpdoc.php 128Classes.inc 129common.inc.php 130

Function debug 130Function fancy_debug 130Define PATH_DELIMITER 130Function phpDocumentor_ConfigFileList 130Function phpDocumentor_parse_ini_file 130Define PHPDOCUMENTOR_VER 131Define PHPDOCUMENTOR_WEBSITE 131Define PHPDOCUMENTOR_WINDOWS 131Define SMART_PATH_DELIMITER 131Define tokenizer_ext 131

EventStack.inc 132IntermediateParser.inc 133Io.inc 134

Function Ioinc_mystrucsort 134Function Ioinc_sortfiles 134Function setup_dirs 134Function set_dir 135

ParserDescCleanup.inc 136Define PHPDOCUMENTOR_PDP_EVENT_B 136Define PHPDOCUMENTOR_PDP_EVENT_BR 136Define PHPDOCUMENTOR_PDP_EVENT_CODE 136Define PHPDOCUMENTOR_PDP_EVENT_DOUBLECR 136

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 4: PhpDocumentor 1.2.2 Manual

Define PHPDOCUMENTOR_PDP_EVENT_ESCAPE 136Define PHPDOCUMENTOR_PDP_EVENT_ESCAPE_CODE 137Define PHPDOCUMENTOR_PDP_EVENT_ESCAPE_PRE 137Define PHPDOCUMENTOR_PDP_EVENT_I 137Define PHPDOCUMENTOR_PDP_EVENT_KBD 137Define PHPDOCUMENTOR_PDP_EVENT_LIST 137Define PHPDOCUMENTOR_PDP_EVENT_P 137Define PHPDOCUMENTOR_PDP_EVENT_PRE 137Define PHPDOCUMENTOR_PDP_EVENT_SAMP 137Define PHPDOCUMENTOR_PDP_EVENT_SIMLIST 138Define PHPDOCUMENTOR_PDP_EVENT_VAR 138Define PHPDOCUMENTOR_PDP_STATE_B 138Define PHPDOCUMENTOR_PDP_STATE_BR 138Define PHPDOCUMENTOR_PDP_STATE_CODE 138Define PHPDOCUMENTOR_PDP_STATE_DOUBLECR 138Define PHPDOCUMENTOR_PDP_STATE_ESCAPE 138Define PHPDOCUMENTOR_PDP_STATE_ESCAPE_CODE 138Define PHPDOCUMENTOR_PDP_STATE_ESCAPE_PRE 139Define PHPDOCUMENTOR_PDP_STATE_I 139Define PHPDOCUMENTOR_PDP_STATE_KBD 139Define PHPDOCUMENTOR_PDP_STATE_LIST 139Define PHPDOCUMENTOR_PDP_STATE_P 139Define PHPDOCUMENTOR_PDP_STATE_PRE 139Define PHPDOCUMENTOR_PDP_STATE_SAMP 139Define PHPDOCUMENTOR_PDP_STATE_SIMLIST 139Define PHPDOCUMENTOR_PDP_STATE_VAR 140

phpdoc.inc 141ProceduralPages.inc 142Publisher.inc 143Setup.inc.php 144

Global Variable $interface 144Global Variable $phpDocumentor_DefaultCategoryName 144Global Variable $phpDocumentor_DefaultPackageName 144Global Variable $_phpDocumentor_setting 145Function phpDocumentor_out 146

add_cvs.php 147Global Variable $cvsadd_directory 147Global Variable $files 147Global Variable $ignore 147Function addToCVS 147Function mystrucsort 148Function sortfiles 148

create_examples.php 149Global Variable $base_package 149Global Variable $output 149Global Variable $output_directory 149Global Variable $parse_directory 149Global Variable $title 150

create_package.xml.php 151

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 5: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Classes 152Class Classes 152

Method addClass 152Method addMethod 153Method addPackageToFile 153Method addVar 153Method getClass 154Method getClassByPackage 154Method getClassesInPath 154Method getConflicts 154Method getDefiniteChildren 155Method getParentClass 155Method getRoots 155Method Inherit 155Method nextFile 156Method processChild 156Method setClassParent 157

Class EventStack 157Var $num 158Var $stack 158Method getEvent 158Method popEvent 158Method pushEvent 158

Class Io 159Var $ignore 159Var $phpDocOptions 159Constructor Io 159Method checkIgnore 159Method dirList 160Method displayHelpMsg 160Method getAllFiles 160Method getBase 160Method getDirTree 161Method getReadmeInstallChangelog 161Method getRegExpableSearchString 161Method getTutorials 161Method isIncludeable 162Method parseArgv 162Method readPhpFile 162Method removeNonMatches 162Method _setupIgnore 163

Class phpDocumentor_IntermediateParser 163Var $all_packages 164Var $classes 164Var $converters 165Var $cur_class 165Var $data 165Var $db_template 165Var $event_handlers 166

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 6: PhpDocumentor 1.2.2 Manual

Var $last 166Var $lasttype 166Var $packagecategories 166Var $packageoutput 167Var $package_pages 167Var $package_parents 167Var $pages 168Var $parsePrivate 168Var $privatepages 168Var $private_class 169Var $proceduralpages 169Var $quietMode 169Var $ric 170Var $targetDir 170Var $templateBase 170Var $title 170Var $type 171Var $uses 171Constructor phpDocumentor_IntermediateParser 171Method addConverter 171Method addElementToPage 172Method addPackageParent 172Method addPage 172Method addPageIfNecessary 173Method addPrivatePage 173Method addUses 173Method ClasselementCmp 174Method Convert 174Method elementCmp 175Method handleClass 175Method handleDefine 175Method handleDocBlock 176Method HandleEvent 176Method handleFunction 177Method handleGlobal 177Method handleInclude 178Method handleMethod 178Method handlePackagePage 178Method handlePage 179Method handleTutorial 179Method handleVar 179Method Output 180Method parsePackagePage 180Method setParsePrivate 181Method setQuietMode 181Method setTargetDir 181Method setTemplateBase 181Method _guessPackage 182

Class phpDocumentor_setup 182

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 7: PhpDocumentor 1.2.2 Manual

Var $dirs 182Var $files 183Var $hidden 183Var $ignore_files 183Var $packages 183Var $parse 184Var $render 184Var $setup 184Constructor phpDocumentor_setup 184Method checkIgnoreTag 184Method createDocs 184Method parseHiddenFiles 184Method parseIni 184Method readCommandLineSettings 184Method readConfigFile 185Method setDirectoriesToParse 185Method setFilesToParse 185Method setIgnore 185Method setJavadocDesc 185Method setPackageOutput 185Method setParsePrivate 185Method setQuietMode 185Method setTargetDir 185Method setTemplateBase 185Method setTitle 185Method setupConverters 185

Class ProceduralPages 185Var $curfile 186Var $defineconflicts 186Var $definesbyfile 186Var $definesbynamefile 186Var $functionconflicts 186Var $functionsbyfile 187Var $functionsbynamefile 187Var $globalconflicts 187Var $globalsbyfile 187Var $globalsbynamefile 187Var $ignorepages 188Var $includesbyfile 188Var $pageclasspackages 188Var $pageconflicts 188Var $pagepackages 188Var $pages 188Var $pathpages 189Method addClassPackageToFile 189Method addDefine 189Method addFunction 189Method addGlobal 189Method addInclude 190

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 8: PhpDocumentor 1.2.2 Manual

Method addPage 190Method addPagePackage 190Method getPathInfo 190Method getRealPath 190Method ignorePage 191Method pathMatchesParsedFile 191Method replaceElement 191Method setName 191Method setParseBase 191Method setupPagePackages 191Method setupPages 191

Class Publisher 192Var $popEvent 193Var $pushEvent 193Var $subscriber 193Var $tokens 193Method publishEvent 193Method subscribe 193

DescHTML.inc 194Class parserB 194

Method Convert 195Class parserBr 195

Method Convert 195Class parserCode 196

Method Convert 196Class parserDescVar 196

Method Convert 197Class parserI 197

Method Convert 197Class parserKbd 198

Method Convert 198Class parserList 199

Var $items 199Var $numbered 199Constructor parserList 199Method addItem 199Method addList 199Method Convert 199

Class parserPre 200Method Convert 200

Class parserSamp 201Method Convert 201

DocBlockTags.inc 202Class parserAccessTag 202

Var $isvalid 202Var $keyword 203Constructor parserAccessTag 203Method Convert 203Method getString 203

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 9: PhpDocumentor 1.2.2 Manual

Class parserExampleTag 204Var $keyword 204Constructor parserExampleTag 204Method ConvertSource 204Method getSourceLink 205

Class parserFileSourceTag 205Var $keyword 206Var $path 206Var $source 206Constructor parserFileSourceTag 206Method Convert 206Method ConvertSource 207Method getSourceLink 207Method writeSource 207

Class parserLicenseTag 208Var $keyword 208Constructor parserLicenseTag 208

Class parserLinkTag 209Var $keyword 209Constructor parserLinkTag 209

Class parserNameTag 209Var $keyword 210Constructor parserNameTag 210Method Convert 210

Class parserParamTag 210Var $keyword 211

Class parserReturnTag 211Var $converted_returnType 212Var $keyword 212Var $returnType 212Constructor parserReturnTag 212Method Convert 212

Class parserSeeTag 213Var $keyword 213Constructor parserSeeTag 213Method Convert 214

Class parserStaticvarTag 214Var $keyword 214

Class parserTag 215Var $keyword 215Var $type 215Constructor parserTag 215Method Convert 216Method getString 216Method HandleEvent 216

Class parserTutorialTag 217Var $keyword 217Method Convert 217

Class parserUsedByTag 218

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 10: PhpDocumentor 1.2.2 Manual

Var $keyword 218Constructor parserUsedByTag 218Method Convert 218

Class parserUsesTag 219Var $keyword 219Constructor parserUsesTag 219Method Convert 219Method getDescription 220

Class parserVarTag 220Var $keyword 221Var $returnType 221

Errors.inc 222Global Variable $phpDocumentor_errors 222Global Variable $phpDocumentor_error_descrip 223Global Variable $phpDocumentor_warning_descrip 225Function addError 225Function addErrorDie 225Function addWarning 226Define PDERROR_ACCESS_WRONG_PARAM 226Define PDERROR_CANT_HAVE_INLINE_IN_TAGNAME 226Define PDERROR_CANT_NEST_IN_B 226Define PDERROR_CHILD_TUTORIAL_NOT_FOUND 226Define PDERROR_CLASS_CONFLICT 226Define PDERROR_CLASS_EXISTS 226Define PDERROR_CLASS_NOT_IN_PACKAGE 226Define PDERROR_CLASS_PARENT_NOT_FOUND 227Define PDERROR_CONVERTER_NOT_FOUND 227Define PDERROR_CONVERTER_OVR_GFCT 227Define PDERROR_DB_TEMPLATE_UNTERMINATED 227Define PDERROR_DOCBLOCK_CONFLICT 227Define PDERROR_DOCBLOCK_GOES_CLASS 227Define PDERROR_ELEMENT_IGNORED 227Define PDERROR_EMPTY_EXAMPLE_TITLE 227Define PDERROR_EXAMPLE_NOT_FOUND 227Define PDERROR_FUNCTION_HAS_NONAME 227Define PDERROR_GLOBAL_NOT_FOUND 228Define PDERROR_ID_MUST_BE_INLINE 228Define PDERROR_IGNORE_TAG_IGNORED 228Define PDERROR_ILLEGAL_PACKAGENAME 228Define PDERROR_INHERITANCE_CONFLICT 228Define PDERROR_INHERITDOC_DONT_WORK_HERE 228Define PDERROR_INLINETAG_IN_SEE 228Define PDERROR_INTERNAL_NOT_CLOSED 228Define PDERROR_MALFORMED_GLOBAL_TAG 228Define PDERROR_MALFORMED_TAG 228Define PDERROR_MULTIPLE_ACCESS_TAGS 229Define PDERROR_MULTIPLE_CATEGORY_TAGS 229Define PDERROR_MULTIPLE_GLOBAL_TAGS 229Define PDERROR_MULTIPLE_NAME_TAGS 229

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 11: PhpDocumentor 1.2.2 Manual

Define PDERROR_MULTIPLE_PACKAGE_TAGS 229Define PDERROR_MULTIPLE_PARENT 229Define PDERROR_MULTIPLE_RETURN_TAGS 229Define PDERROR_MULTIPLE_SUBPACKAGE_TAGS 229Define PDERROR_MULTIPLE_VAR_TAGS 229Define PDERROR_NEED_WHITESPACE 229Define PDERROR_NO_CONVERTERS 229Define PDERROR_NO_CONVERTER_HANDLER 229Define PDERROR_NO_DOCBOOK_ID 230Define PDERROR_NO_PACKAGE_TAG 230Define PDERROR_NO_PAGE_LEVELDOCBLOCK 230Define PDERROR_OVERRIDDEN_PACKAGE_TAGS 230Define PDERROR_OVERRIDDEN_SUBPACKAGE_TAGS 230Define PDERROR_PACKAGECAT_SET 230Define PDERROR_PACKAGEOUTPUT_DELETES_PARENT_FILE 230Define PDERROR_PARENT_NOT_FOUND 230Define PDERROR_PARSEPRIVATE 230Define PDERROR_PDFFUNCTION_NO_FUNC 230Define PDERROR_PDF_METHOD_DOESNT_EXIST 230Define PDERROR_PDF_TEMPVAR_DOESNT_EXIST 231Define PDERROR_PRIVATE_ASSUMED 231Define PDERROR_SOURCECODE_IGNORED 231Define PDERROR_SOURCE_TAG_FUNCTION_NOT_FOUND 231Define PDERROR_SOURCE_TAG_IGNORED 231Define PDERROR_TAG_NOT_HANDLED 231Define PDERROR_TEMPLATEDIR_DOESNT_EXIST 231Define PDERROR_TEXT_OUTSIDE_LI 231Define PDERROR_TUTORIAL_IS_OWN_CHILD 231Define PDERROR_TUTORIAL_IS_OWN_GRANDPA 231Define PDERROR_TUTORIAL_NOT_FOUND 232Define PDERROR_TUTORIAL_SUBSECTION_NOT_FOUND 232Define PDERROR_UNCLOSED_TAG 232Define PDERROR_UNKNOWN_COMMANDLINE 232Define PDERROR_UNKNOWN_TAG 232Define PDERROR_UNMATCHED_LIST_TAG 232Define PDERROR_UNMATCHED_TUTORIAL_TAG 232Define PDERROR_UNTERMINATED_ATTRIB 232Define PDERROR_UNTERMINATED_ENTITY 232Define PDERROR_UNTERMINATED_INLINE_TAG 232

Class ErrorTracker 233Var $curfile 233Var $errors 233Var $lasterror 233Var $lastwarning 233Var $linenum 233Var $warnings 233Method addError 233Method addErrorReturn 234Method addWarning 234

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 12: PhpDocumentor 1.2.2 Manual

Method handleEvent 234Method returnErrors 234Method returnLastError 235Method returnLastWarning 235Method returnWarnings 235

Class RecordError 235Var $type 235Method output 235

Class RecordWarning 236Var $data 236Var $file 236Var $linenum 236Var $num 236Var $type 236Constructor RecordWarning 237Method output 237

InlineTags.inc 238Class parserIdInlineTag 238

Var $category 238Var $id 239Var $inlinetype 239Var $package 239Var $subpackage 239Var $tutorial 239Constructor parserIdInlineTag 239Method Convert 239

Class parserInheritdocInlineTag 240Var $inlinetype 240Constructor parserInheritdocInlineTag 240Method Convert 240

Class parserInlineTag 241Var $inlinetype 241Var $type 241Constructor parserInlineTag 241Method getString 242Method Strlen 242

Class parserLinkInlineTag 242Var $linktext 242Constructor parserLinkInlineTag 243Method Convert 243Method ConvertPart 243

Class parserSourceInlineTag 243Var $end 243Var $inlinetype 244Var $source 244Var $start 244Var $_class 244Constructor parserSourceInlineTag 244Method arrayConvert 244

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 13: PhpDocumentor 1.2.2 Manual

Method Convert 245Method getString 245Method setSource 245Method stringConvert 245Method Strlen 246

Class parserTocInlineTag 246Var $inlinetype 246Constructor parserTocInlineTag 247Method Convert 247Method setPath 247Method setTOC 247

Class parserTutorialInlineTag 247Constructor parserTutorialInlineTag 248Method Convert 248

LinkClasses.inc 249Class abstractLink 249

Var $category 249Var $fileAlias 249Var $name 249Var $package 250Var $path 250Var $subpackage 250Var $type 250Method addLink 250

Class classLink 250Var $type 251

Class defineLink 251Var $type 251

Class functionLink 251Var $type 252

Class globalLink 252Var $type 252

Class methodLink 252Var $class 252Var $type 252Method addLink 253

Class pageLink 253Var $type 253

Class tutorialLink 253Var $section 254Var $title 254Var $type 254Method addLink 254

Class varLink 254Var $type 255

ParserData.inc 256Class parserBase 256

Var $type 256Var $value 257

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 14: PhpDocumentor 1.2.2 Manual

Method getType 257Method getValue 257Method setValue 257

Class parserData 257Var $classelements 258Var $clean 258Var $docblock 258Var $elements 258Var $links 258Var $parent 259Var $privateclasselements 259Var $privateelements 259Var $tutorial 259Var $type 259Method addElement 259Method addLink 259Method addTutorial 260Method explicitDocBlock 260Method getClasses 260Method getLink 260Method getName 260Method getTutorial 260Method hasExplicitDocBlock 260Method isClean 260Method setDocBlock 260Method setParent 261

Class parserPage 261Var $category 261Var $file 261Var $id 261Var $modDate 262Var $name 262Var $package 262Var $packageOutput 262Var $parserVersion 262Var $path 262Var $source 263Var $sourceLocation 263Var $subpackage 263Var $type 263Constructor parserPage 263Method getFile 263Method getName 263Method getPackageOutput 263Method getParseData 263Method getPath 264Method getSourceLocation 264Method getType 264Method setFile 264

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 15: PhpDocumentor 1.2.2 Manual

Method setName 264Method setPackageOutput 264Method setPath 265Method setSource 265Method setSourceLocation 265

Class parserStringWithInlineTags 265Var $type 266Var $value 266Method add 266Method Convert 266Method getString 266Method hasInlineTag 267Method setSource 267Method trimmedStrlen 267

ParserDocBlock.inc 268Class parserDesc 268

Var $type 268Method add 268Method hasInheritDoc 269Method hasSource 269Method replaceInheritDoc 269

Class parserDocBlock 269Var $category 269Var $desc 269Var $endlinenumber 270Var $explicitcategory 270Var $explicitpackage 270Var $funcglobals 270Var $hasaccess 271Var $hasname 271Var $linenumber 271Var $package 271Var $packagedescrip 271Var $params 271Var $processed_desc 271Var $processed_sdesc 272Var $return 272Var $sdesc 272Var $statics 272Var $subpackage 272Var $subpackagedescrip 272Var $tags 272Var $unknown_tags 273Var $var 273Constructor parserDocBlock 273Method addAccess 273Method addExample 273Method addFileSource 274Method addFuncGlobal 274

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 16: PhpDocumentor 1.2.2 Manual

Method addKeyword 274Method addLink 274Method addName 275Method addPackage 275Method addParam 275Method addReturn 275Method addSee 276Method addStaticVar 276Method addTag 276Method addUnknownTag 276Method addUses 277Method addVar 277Method canSource 277Method changeGlobal 277Method changeParam 278Method changeStatic 278Method getDesc 278Method getEndLineNumber 278Method getExplicitCategory 278Method getExplicitPackage 278Method getKeyword 278Method getLineNumber 278Method getSDesc 279Method getType 279Method hasInheritDoc 279Method listParams 279Method listTags 279Method overridePackage 279Method postProcess 279Method replaceInheritDoc 280Method setDesc 280Method setEndLineNumber 280Method setExplicitCategory 280Method setExplicitPackage 280Method setLineNumber 281Method setShortDesc 281Method setSource 281Method updateGlobals 282Method updateParams 282Method updateStatics 282

ParserElements.inc 283Class parserClass 283

Var $curfile 283Var $extends 284Var $ignore 284Var $parent 284Var $sourceLocation 284Var $tutorial 284Var $type 285

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 17: PhpDocumentor 1.2.2 Manual

Method addTutorial 285Method getChildClassList 285Method getConflicts 285Method getExtends 286Method getInheritedMethods 286Method getInheritedVars 286Method getLink 286Method getMethod 287Method getMethodNames 287Method getMethods 287Method getParent 287Method getParentClassTree 287Method getSourceLocation 288Method getTutorial 288Method getVar 288Method getVarNames 289Method getVars 289Method hasMethod 289Method hasVar 289Method setExtends 289Method setParent 289Method setParentNoClass 290Method setSourceLocation 290

Class parserDefine 290Var $type 291Method getConflicts 291Method getLink 291

Class parserElement 292Var $conflicts 292Var $docblock 292Var $endlinenumber 293Var $file 293Var $linenumber 293Var $name 293Var $path 293Method getEndLineNumber 293Method getFile 293Method getLineNumber 293Method getName 294Method getPackage 294Method getPath 294Method setDocBlock 294Method setEndLineNumber 294Method setFile 294Method setLineNumber 294Method setName 294Method setPath 294

Class parserFunction 295Var $globals 295

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 18: PhpDocumentor 1.2.2 Manual

Var $params 295Var $returnsreference 296Var $source 296Var $statics 296Var $type 296Method addGlobals 296Method addParam 297Method addSource 297Method addStatics 297Method getConflicts 297Method getFunctionCall 298Method getIntricateFunctionCall 298Method getLink 298Method getParam 298Method getReturnsReference 298Method getSource 299Method hasSource 299Method listGlobals 299Method listParams 299Method listStatics 299Method setReturnsReference 299

Class parserGlobal 299Var $datatype 299Var $type 299Method getConflicts 300Method getDataType 300Method getLink 300Method setDataType 301

Class parserInclude 301Var $type 301

Class parserMethod 302Var $class 302Var $isConstructor 302Var $isDestructor 302Var $type 302Constructor parserMethod 303Method getClass 303Method getFunctionCall 303Method getIntricateFunctionCall 303Method getLink 303Method getOverrides 303Method getOverridingMethods 304Method getOverridingMethodsForClass 304Method setConstructor 304Method setDestructor 304

Class parserPackagePage 304Var $package 305Var $type 305Constructor parserPackagePage 305

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 19: PhpDocumentor 1.2.2 Manual

Method Convert 305Class parserTutorial 305

Var $children 306Var $ini 306Var $linked_element 306Var $name 306Var $next 306Var $package 307Var $parent 307Var $path 307Var $prev 307Var $tutorial_type 307Var $type 308Var $_xml 308Constructor parserTutorial 308Method Convert 308Method getLink 308Method getNext 309Method getParent 309Method getPrev 309Method getTitle 309Method isChildOf 310Method setNext 310Method setParent 310Method setPrev 311

Class parserVar 311Var $class 311Var $type 311Constructor parserVar 312Method getClass 312Method getLink 312Method getOverrides 312Method getOverridingVars 312Method getOverridingVarsForClass 313

HighlightParser.inc 314Parser.inc 315

Define PARSER_EVENT_ARRAY 315Define PARSER_EVENT_CLASS 315Define PARSER_EVENT_CLASS_MEMBER 315Define PARSER_EVENT_COMMENT 315Define PARSER_EVENT_COMMENTBLOCK 315Define PARSER_EVENT_DEFINE 315Define PARSER_EVENT_DEFINE_GLOBAL 315Define PARSER_EVENT_DEFINE_PARAMS 315Define PARSER_EVENT_DEFINE_PARAMS_PARENTHESIS 315Define PARSER_EVENT_DESC 315Define PARSER_EVENT_DOCBLOCK 316Define PARSER_EVENT_DOCBLOCK_TEMPLATE 316Define PARSER_EVENT_DOCKEYWORD 316

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 20: PhpDocumentor 1.2.2 Manual

Define PARSER_EVENT_DOCKEYWORD_EMAIL 316Define PARSER_EVENT_END_DOCBLOCK_TEMPLATE 316Define PARSER_EVENT_END_STATEMENT 316Define PARSER_EVENT_EOFQUOTE 316Define PARSER_EVENT_ESCAPE 316Define PARSER_EVENT_FUNCTION 316Define PARSER_EVENT_FUNCTION_PARAMS 316Define PARSER_EVENT_FUNC_GLOBAL 316Define PARSER_EVENT_GLOBAL_VALUE 316Define PARSER_EVENT_INCLUDE 316Define PARSER_EVENT_INCLUDE_PARAMS 317Define PARSER_EVENT_INCLUDE_PARAMS_PARENTHESIS 317Define PARSER_EVENT_INLINE_DOCKEYWORD 317Define PARSER_EVENT_LOGICBLOCK 317Define PARSER_EVENT_METHOD 317Define PARSER_EVENT_METHOD_LOGICBLOCK 317Define PARSER_EVENT_NOEVENTS 317Define PARSER_EVENT_OUTPHP 317Define PARSER_EVENT_PHPCODE 317Define PARSER_EVENT_QUOTE 317Define PARSER_EVENT_QUOTE_VAR 317Define PARSER_EVENT_SINGLEQUOTE 317Define PARSER_EVENT_STATIC_VAR 318Define PARSER_EVENT_STATIC_VAR_VALUE 318Define PARSER_EVENT_TAGS 318Define PARSER_EVENT_VAR 318Define PHPDOCUMENTOR_EVENT_CLASS 318Define PHPDOCUMENTOR_EVENT_DEFINE 318Define PHPDOCUMENTOR_EVENT_DOCBLOCK 318Define PHPDOCUMENTOR_EVENT_DOCBLOCK_TEMPLATE 318Define PHPDOCUMENTOR_EVENT_END_DOCBLOCK_TEMPLATE 318Define PHPDOCUMENTOR_EVENT_END_PAGE 318Define PHPDOCUMENTOR_EVENT_FUNCTION 318Define PHPDOCUMENTOR_EVENT_GLOBAL 319Define PHPDOCUMENTOR_EVENT_INCLUDE 319Define PHPDOCUMENTOR_EVENT_MESSAGE 319Define PHPDOCUMENTOR_EVENT_NEWFILE 319Define PHPDOCUMENTOR_EVENT_NEWLINENUM 319Define PHPDOCUMENTOR_EVENT_NEWSTATE 319Define PHPDOCUMENTOR_EVENT_PACKAGEPAGE 319Define PHPDOCUMENTOR_EVENT_PAGE 319Define PHPDOCUMENTOR_EVENT_README_INSTALL_CHANGELOG 319Define PHPDOCUMENTOR_EVENT_TUTORIAL 319Define PHPDOCUMENTOR_EVENT_VAR 319Define STATE_ARRAY 320Define STATE_CLASS 320Define STATE_CLASS_MEMBER 320Define STATE_COMMENT 320Define STATE_COMMENTBLOCK 320

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 21: PhpDocumentor 1.2.2 Manual

Define STATE_DEFINE 320Define STATE_DEFINE_PARAMS 320Define STATE_DEFINE_PARAMS_PARENTHESIS 320Define STATE_DESC 320Define STATE_DOCBLOCK 320Define STATE_DOCBLOCK_TEMPLATE 320Define STATE_DOCKEYWORD 320Define STATE_DOCKEYWORD_EMAIL 320Define STATE_END_CLASS 321Define STATE_END_DOCBLOCK_TEMPLATE 321Define STATE_EOFQUOTE 321Define STATE_ESCAPE 321Define STATE_FUNCTION 321Define STATE_FUNCTION_PARAMS 321Define STATE_FUNC_GLOBAL 321Define STATE_GLOBAL 321Define STATE_GLOBAL_VALUE 321Define STATE_INCLUDE 321Define STATE_INCLUDE_PARAMS 321Define STATE_INCLUDE_PARAMS_PARENTHESIS 321Define STATE_INLINE_DOCKEYWORD 322Define STATE_LOGICBLOCK 322Define STATE_METHOD 322Define STATE_METHOD_LOGICBLOCK 322Define STATE_NOEVENTS 322Define STATE_OUTPHP 322Define STATE_PHPCODE 322Define STATE_QUOTE 322Define STATE_QUOTE_VAR 322Define STATE_SINGLEQUOTE 322Define STATE_STATIC_VAR 322Define STATE_STATIC_VAR_VALUE 322Define STATE_TAGS 322Define STATE_VAR 323

phpDocumentorTParser.inc 324XMLpackagePageParser.inc 325

Define PHPDOCUMENTOR_PDP_EVENT_ATTRIBUTES 325Define PHPDOCUMENTOR_PDP_EVENT_CDATA 325Define PHPDOCUMENTOR_PDP_EVENT_ENTITY 325Define PHPDOCUMENTOR_PDP_EVENT_PROGRAMLISTING 325Define PHPDOCUMENTOR_PDP_EVENT_TAG 325Define PHPDOCUMENTOR_PDP_STATE_ATTRIBUTES 325Define PHPDOCUMENTOR_PDP_STATE_CDATA 325Define PHPDOCUMENTOR_PDP_STATE_ENTITY 325Define PHPDOCUMENTOR_PDP_STATE_PROGRAMLISTING 325Define PHPDOCUMENTOR_PDP_STATE_TAG 326

Class Parser 326Constructor Parser 326Method categoryTagHandler 326

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 22: PhpDocumentor 1.2.2 Manual

Method checkEventPop 327Method checkEventPush 327Method configWordParser 327Method defaultTagHandler 327Method endTag 327Method exampleTagHandler 328Method getParserEventName 328Method globalTagHandler 328Method invalidTagHandler 329Method packageTagHandler 329Method paramTagHandler 329Method parse 330Method returnTagHandler 330Method setupStates 330Method staticvarTagHandler 331Method usesTagHandler 331Method varTagHandler 331

Class parserDescParser 332Constructor parserDescParser 332Method addText 332Method defaultHandler 333Method doSimpleList 333Method dropContext 333Method getContext 334Method getParserEventName 334Method parse 334Method setContext 334Method setupStates 335

Class phpDocumentorTParser 335Var $eventHandlers 336Var $inlineTagHandlers 336Var $source_location 336Constructor phpDocumentorTParser 336Method checkEventPop 336Method checkEventPush 336Method configWordParser 337Method getToken 337Method parse 337Method setupEventStates 337Method setupStates 337

Class phpDocumentor_HighlightParser 337Var $eventHandlers 338Var $tagHandlers 339Var $_converter 339Var $_filesourcepath 340Var $_line 340Var $_output 340Constructor phpDocumentor_HighlightParser 340Method configWordParser 340

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 23: PhpDocumentor 1.2.2 Manual

Method newLineNum 341Method parse 341Method setLineNum 342Method setupStates 342Method _retrieveType 342

Class phpDocumentor_HighlightWordParser 342Method backupPos 343Method getWord 343Method nextToken 343Method setup 343

Class ppageParser 343Var $package 344Var $subpackage 344Constructor ppageParser 344Method defaultHandler 344Method handleInlineDockeyword 344Method parse 345Method setupStates 345

Class XMLPackagePageParser 345Var $context 345Var $eventHandlers 346Var $pars 346Var $refsect1id 346Var $refsect2id 346Var $refsect3id 346Var $_cursection 346Var $_gettoc 346Var $_toc 346Constructor XMLPackagePageParser 346Method getParserEventName 347Method parse 347Method setupStates 348

find_phpdoc.php 349PackagePageElements.inc 350Class parserCData 350

Method Convert 351Class parserEntity 351

Constructor parserEntity 351Method Convert 351

Class parserXMLDocBookTag 352Var $attributes 352Var $name 352Var $_cdata 353Var $_description 353Var $_id 353Var $_title 353Constructor parserXMLDocBookTag 353Method add 353Method addAttribute 353

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 24: PhpDocumentor 1.2.2 Manual

Method addCData 354Method Convert 354Method endCData 354Method getId 354Method getSubsection 355Method getTitle 355Method getTOC 355Method hasTitle 356Method setId 356Method setTitle 356Method setTOC 356Method startCData 356

phpDocumentorTWordParser.inc 357WordParser.inc 358Class ObjectWordParser 358

Constructor ObjectWordParser 358Method getWord 358Method nextIsObjectOrNonNL 358Method setup 358

Class phpDocumentorTWordParser 359Method addFileSource 359Method addSource 359Method backupPos 360Method concatTokens 360Method findGlobal 360Method getFileSource 360Method getSource 361Method getWord 361Method setup 361Method tokenEquals 361

Class WordParser 361Method backupPos 362Method getBlock 362Method getPos 362Method getSource 362Method getWord 362Method setPos 363Method setSeperator 363Method setup 363Method setWhitespace 363

Package Converters Procedural Elements 366Converter.inc 366

Function adv_htmlentities 366

Package Converters Classes 368Class Converter 368

Var $all_packages 369Var $class 369Var $classes 369

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 25: PhpDocumentor 1.2.2 Manual

Var $class_contents 369Var $class_data 370Var $class_elements 370Var $curfile 370Var $curpage 370Var $define_elements 370Var $elements 371Var $function_elements 371Var $global_elements 371Var $leftindex 371Var $outputformat 372Var $package 372Var $packagecategories 372Var $package_elements 373Var $package_output 373Var $package_parents 373Var $page 374Var $page_contents 374Var $page_data 374Var $page_elements 374Var $parseprivate 375Var $path 375Var $pkg_elements 375Var $quietmode 375Var $smarty_dir 375Var $sort_absolutely_everything 376Var $sort_page_contents_by_type 376Var $sourcePaths 376Var $subpackage 376Var $targetDir 376Var $templateDir 377Var $templateName 377Var $template_options 377Var $title 377Var $todoList 378Constructor Converter 378Method AttrToString 378Method Bolden 379Method Br 379Method checkState 379Method Convert 380Method convertClass 380Method convertDefine 380Method ConvertErrorLog 381Method convertFunction 381Method convertGlobal 382Method convertInclude 382Method convertMethod 383Method convertPage 383

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 26: PhpDocumentor 1.2.2 Manual

Method ConvertTitle 383Method ConvertTodoList 384Method convertTutorial 384Method convertVar 384Method Convert_RIC 384Method copyFile 385Method createParentDir 385Method EncloseList 385Method EncloseParagraph 386Method endClass 386Method endPage 386Method formatIndex 386Method formatLeftIndex 387Method formatPkgIndex 387Method formatTutorialTOC 387Method generateChildClassList 388Method generateFormattedClassTree 388Method getClassesOnPage 389Method getClassLink 389Method getConverterDir 389Method getCurrentPageLink 389Method getCurrentPageURL 390Method getDefineLink 390Method getFileSourceName 390Method getFileSourcePath 390Method getFormattedConflicts 391Method getFormattedDescMethods 391Method getFormattedDescVars 391Method getFormattedInheritedMethods 392Method getFormattedInheritedVars 392Method getFormattedOverrides 392Method getFunctionLink 393Method getGlobalLink 393Method getGlobalValue 394Method getId 394Method getIncludeValue 394Method getLink 395Method getMethodLink 396Method getPageLink 396Method getSortedClassTreeFromClass 397Method getSourceLink 398Method getState 398Method getTutorialId 399Method getTutorialLink 399Method getTutorialTree 400Method getVarLink 400Method hasSourceCode 401Method hasTutorial 401Method highlightDocBlockSource 401

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 27: PhpDocumentor 1.2.2 Manual

Method highlightSource 402Method Italicize 402Method Kbdize 402Method ListItem 403Method newSmarty 403Method Output 403Method postProcess 403Method prepareDocBlock 404Method PreserveWhiteSpace 404Method ProgramExample 404Method returnLink 405Method returnSee 405Method Sampize 406Method setSourcePaths 406Method setTargetDir 406Method setTemplateBase 406Method setTemplateDir 407Method sortPageContentsByElementType 407Method sourceLine 407Method TranslateEntity 408Method TranslateTag 408Method type_adjust 408Method unmangle 409Method vardump_tree 409Method Varize 409Method walk 410Method walk_everything 410Method writeExample 410Method writeFile 411Method writeSource 411Method _tutorial_path 412

CHMdefaultConverter.inc 413Class CHMdefaultConverter 413

Var $base_dir 414Var $class_dir 414Var $current 414Var $currentclass 414Var $juststarted 414Var $KLinks 414Var $leftindex 415Var $name 415Var $outputformat 415Var $package_pages 415Var $page_dir 415Var $ric_set 415Var $sort_page_contents_by_type 415Var $wrote 416Constructor CHMdefaultConverter 416Method addHHP 416

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 28: PhpDocumentor 1.2.2 Manual

Method addKLink 416Method addSourceTOC 417Method addTOC 417Method convertClass 417Method convertDefine 417Method ConvertErrorLog 417Method convertFunction 418Method convertGlobal 418Method convertInclude 418Method convertMethod 419Method convertPackagepage 419Method convertPage 419Method ConvertTodoList 420Method convertTutorial 420Method convertVar 420Method Convert_RIC 420Method copyMediaRecursively 420Method endClass 420Method endPage 421Method formatIndex 421Method formatLeftIndex 421Method formatPkgIndex 422Method formatTutorialTOC 422Method generateElementIndex 422Method generateFormattedClassTree 422Method generateFormattedClassTrees 423Method generateKLinks 423Method generatePkgElementIndex 423Method generatePkgElementIndexes 424Method generateTOC 424Method getCData 424Method getClassLink 424Method getCurrentPageLink 424Method getDefineLink 424Method getExampleLink 425Method getFunctionLink 425Method getGlobalLink 425Method getId 426Method getIndexInformation 426Method getMethodLink 426Method getPageLink 427Method getPageName 427Method getRootTree 427Method getSourceAnchor 427Method getSourceLink 428Method getTutorialId 428Method getVarLink 428Method Output 428Method postProcess 429

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 29: PhpDocumentor 1.2.2 Manual

Method ProgramExample 429Method rcNatCmp 429Method rcNatCmp1 429Method returnLink 429Method returnSee 430Method setTargetDir 430Method setTemplateDir 430Method SmartyInit 430Method unmangle 430Method writeExample 430Method writefile 430Method writeNewPPage 431Method writeSource 431

Class CSVdia2codeConverter 431Var $csv_array 431Var $name 431Var $output 431Constructor CSVdia2codeConverter 431Method convertClass 432Method convertDefine 432Method convertDocBlock 432Method ConvertErrorLog 432Method convertFunction 432Method convertGlobal 432Method convertInclude 432Method convertMethod 432Method convertPackagepage 432Method convertPage 432Method convertParams 432Method convertTutorial 432Method convertVar 432Method Convert_RIC 432Method generateFormattedClassTrees 432Method getCData 432Method getClassLink 432Method getcsv 432Method getDefineLink 432Method getExampleLink 432Method getFunctionLink 432Method getGlobalLink 432Method getMethodLink 432Method getPageLink 432Method getPageName 432Method getRootTree 432Method getSourceLink 432Method getState 432Method getTutorialId 432Method getVarLink 432Method mystrnatcasecmp 432

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 30: PhpDocumentor 1.2.2 Manual

Method Output 432Method returnLink 433Method returnSee 433Method setTemplateDir 433Method unmangle 433Method writeExample 433Method writeSource 433

HTMLframesConverter.inc 434Class HTMLframesConverter 434

Var $base_dir 435Var $class_dir 435Var $current 435Var $currentclass 435Var $juststarted 435Var $leftindex 435Var $name 436Var $outputformat 436Var $package_pages 436Var $page_dir 436Var $ric_set 436Var $sort_page_contents_by_type 436Var $wrote 437Constructor HTMLframesConverter 437Method convertClass 437Method convertDefine 437Method ConvertErrorLog 438Method convertFunction 438Method convertGlobal 438Method convertInclude 438Method convertMethod 439Method convertPackagepage 439Method convertPage 439Method ConvertTodoList 440Method convertTutorial 440Method convertVar 440Method Convert_RIC 440Method copyMediaRecursively 440Method endClass 440Method endPage 441Method formatIndex 441Method formatLeftIndex 441Method formatPkgIndex 442Method formatTutorialTOC 442Method generateElementIndex 442Method generateFormattedClassTree 442Method generateFormattedClassTrees 443Method generatePkgElementIndex 443Method generatePkgElementIndexes 443Method getCData 444

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 31: PhpDocumentor 1.2.2 Manual

Method getClassLink 444Method getCurrentPageLink 444Method getDefineLink 444Method getExampleLink 445Method getFunctionLink 445Method getGlobalLink 445Method getId 445Method getIndexInformation 445Method getMethodLink 446Method getPageLink 446Method getPageName 447Method getRootTree 447Method getSourceAnchor 447Method getSourceLink 447Method getTutorialId 447Method getTutorialTree 447Method getVarLink 447Method makeLeft 448Method Output 448Method postProcess 448Method ProgramExample 448Method rcNatCmp 448Method rcNatCmp1 449Method returnLink 449Method returnSee 449Method setTargetDir 449Method SmartyInit 450Method unmangle 450Method writeExample 450Method writeNewPPage 450Method writeSource 450

HTMLSmartyConverter.inc 451Class HTMLSmartyConverter 451

Var $base_dir 452Var $class 452Var $class_data 452Var $class_dir 452Var $current 452Var $currentclass 452Var $juststarted 452Var $leftindex 453Var $name 453Var $outputformat 453Var $package_pages 453Var $page 453Var $page_data 453Var $page_dir 454Var $path 454Var $sort_page_contents_by_type 454

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 32: PhpDocumentor 1.2.2 Manual

Constructor HTMLSmartyConverter 454Method convertClass 454Method convertDefine 454Method ConvertErrorLog 455Method convertFunction 455Method convertGlobal 455Method convertInclude 456Method convertMethod 456Method convertPackagepage 457Method convertPage 457Method ConvertTodoList 457Method convertTutorial 457Method convertVar 457Method Convert_RIC 458Method copyMediaRecursively 458Method endClass 458Method endPage 458Method formatIndex 458Method formatLeftIndex 459Method formatPkgIndex 459Method formatTutorialTOC 459Method generateElementIndex 460Method generateFormattedClassTree 460Method generateFormattedClassTrees 460Method generatePkgElementIndex 461Method generatePkgElementIndexes 461Method getCData 461Method getClassContents 461Method getClassLeft 461Method getClassLink 461Method getCurrentPageLink 462Method getDefineLink 462Method getExampleLink 462Method getFunctionLink 462Method getGlobalLink 462Method getId 463Method getMethodLink 463Method getPageContents 463Method getPageLeft 463Method getPageLink 463Method getPageName 464Method getRootTree 464Method getSourceAnchor 464Method getSourceLink 465Method getTutorialId 465Method getTutorialList 465Method getTutorialTree 465Method getVarLink 465Method makeLeft 465

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 33: PhpDocumentor 1.2.2 Manual

Method Output 465Method postProcess 465Method ProgramExample 465Method rcNatCmp 466Method rcNatCmp1 466Method returnLink 466Method returnSee 466Method setTargetDir 467Method SmartyInit 467Method unmangle 467Method writeExample 467Method writeNewPPage 467Method writeRIC 467Method writeSource 467

class.phpdocpdf.php 468ParserPDF.inc 469

Define PHPDOCUMENTOR_PDF_EVENT_CONTENT 469Define PHPDOCUMENTOR_PDF_EVENT_FONT 469Define PHPDOCUMENTOR_PDF_EVENT_NEWPAGE 469Define PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION 469Define PHPDOCUMENTOR_PDF_EVENT_TEXT 469Define PHPDOCUMENTOR_PDF_STATE_CONTENT 469Define PHPDOCUMENTOR_PDF_STATE_FONT 469Define PHPDOCUMENTOR_PDF_STATE_NEWPAGE 469Define PHPDOCUMENTOR_PDF_STATE_PDFFUNCTION 470Define PHPDOCUMENTOR_PDF_STATE_TEXT 470

PDFdefaultConverter.inc 471Class PDFdefaultConverter 471

Var $classpackage_pagenums 471Var $curclasspackage 472Var $curpagepackage 472Var $leftindex 472Var $name 472Var $outputformat 472Var $pagepackage_pagenums 472Var $pdf 472Var $ric_set 472Var $smarty_dir 472Var $sort_absolutely_everything 472Var $_sourcecode 473Constructor PDFdefaultConverter 473Method convertClass 473Method convertDefine 473Method convertDocBlock 473Method convertFunction 473Method convertGlobal 473Method convertInclude 473Method convertMethod 473Method convertPackagepage 473

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 34: PhpDocumentor 1.2.2 Manual

Method convertPage 473Method convertParams 473Method convertTutorial 473Method convertVar 473Method Convert_RIC 473Method generateFormattedClassTrees 474Method getCData 474Method getClassLink 474Method getDefineLink 474Method getExampleLink 475Method getFileSourceName 475Method getFunctionLink 475Method getGlobalLink 475Method getGlobalValue 476Method getMethodLink 476Method getPageLink 476Method getPageName 476Method getRootTree 476Method getSourceAnchor 477Method getSourceLink 477Method getState 477Method getTutorialId 477Method getVarLink 477Method mystrnatcasecmp 478Method Output 478Method postProcess 478Method returnLink 478Method returnSee 478Method setTemplateDir 478Method TranslateTag 478Method unmangle 479Method writeExample 479Method writeSource 479

Class PDFParser 479Constructor PDFParser 479Method getParserEventName 479Method parse 479Method setupStates 480

Class phpdocpdf 480Var $converter 481Var $font_dir 481Var $indents 481Var $indexContents 481Var $listType 481Var $reportContents 481Var $set_pageNumbering 481Var $_colorStack 481Var $_save 481Constructor phpdocpdf 481

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 35: PhpDocumentor 1.2.2 Manual

Method addMessage 481Method bullet 481Method dots 481Method ezNewPage 481Method ezOutput 481Method ezProcessText 481Method ezText 481Method getColor 482Method getYPlusOffset 482Method indent 482Method index 482Method IndexLetter 482Method orderedBullet 482Method rf 482Method setColorArray 482Method setHTMLColor 482Method setupTOC 482Method textcolor 482Method validHTMLColor 482Method _ezText 482

XMLDocBookpeardoc2Converter.inc 483XMLDocBookConverter.inc 484Class XMLDocBookConverter 484

Var $base_dir 485Var $category 485Var $class 485Var $class_data 485Var $class_dir 485Var $current 485Var $currentclass 486Var $function_data 486Var $juststarted 486Var $leftindex 486Var $local 486Var $method_data 486Var $name 486Var $outputformat 486Var $package_pages 486Var $page 487Var $page_data 487Var $page_dir 487Var $path 487Var $sort_page_contents_by_type 487Var $sourceloc 488Var $template_options 488Constructor XMLDocBookConverter 488Method convertClass 488Method convertDefine 488Method ConvertErrorLog 489

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 36: PhpDocumentor 1.2.2 Manual

Method convertFunction 489Method convertGlobal 489Method convertInclude 490Method convertMethod 490Method convertPackagePage 490Method convertPage 491Method convertTutorial 491Method convertVar 491Method endClass 491Method endPage 492Method formatIndex 492Method formatLeftIndex 492Method formatPkgIndex 493Method generateElementIndex 493Method generateFormattedClassTree 493Method generateFormattedClassTrees 494Method generatePkgElementIndex 494Method generatePkgElementIndexes 494Method getCData 494Method getClassLink 494Method getDefineLink 495Method getFunctionLink 495Method getGlobalLink 496Method getId 496Method getLink 497Method getMethodLink 497Method getPageLink 497Method getPageName 498Method getRootTree 498Method getTutorialId 498Method getVarLink 498Method makeLeft 498Method Output 498Method postProcess 499Method prepareDocBlock 499Method rcNatCmp 499Method rcNatCmp1 499Method returnLink 499Method returnSee 499Method setTargetDir 500Method setTemplateDir 500Method SmartyInit 500Method type_adjust 500Method unmangle 500Method writeNewPPage 500

Class XMLDocBookpeardoc2Converter 500Var $base_dir 501Var $category 501Var $class 501

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 37: PhpDocumentor 1.2.2 Manual

Var $class_data 501Var $class_dir 501Var $current 501Var $currentclass 501Var $function_data 502Var $juststarted 502Var $leftindex 502Var $local 502Var $method_data 502Var $name 502Var $outputformat 502Var $packagexml 502Var $package_pages 503Var $page 503Var $page_data 503Var $page_dir 503Var $path 503Var $sort_absolutely_everything 503Var $sort_page_contents_by_type 503Var $sourceloc 504Var $template_options 504Var $_peardoc2_constants 504Var $_peardoc2_globals 504Var $_write_constants_xml 504Var $_write_globals_xml 504Constructor XMLDocBookpeardoc2Converter 504Method addSummaryToPackageXml 505Method Br 505Method convertClass 505Method convertDefine 505Method ConvertErrorLog 505Method convertFunction 506Method convertGlobal 506Method convertInclude 506Method convertMethod 506Method convertPackagePage 507Method convertPage 507Method convertTutorial 507Method convertVar 508Method endClass 508Method flushPackageXml 508Method formatIndex 508Method formatLeftIndex 508Method formatPkgIndex 509Method generateChildClassList 509Method generateElementIndex 509Method generateFormattedClassTree 509Method generateFormattedClassTrees 509Method generatePkgElementIndex 510

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 38: PhpDocumentor 1.2.2 Manual

Method generatePkgElementIndexes 510Method getCData 510Method getClassLink 510Method getDefineLink 511Method getExampleLink 511Method getFunctionLink 511Method getGlobalLink 512Method getId 512Method getLink 512Method getMethodLink 513Method getPageLink 513Method getPageName 513Method getRootTree 513Method getSourceAnchor 514Method getTutorialId 514Method getVarLink 514Method makeLeft 515Method Output 515Method postProcess 515Method prepareDocBlock 515Method ProgramExample 515Method rcNatCmp 515Method rcNatCmp1 515Method returnLink 515Method returnSee 516Method setTemplateDir 516Method type_adjust 516Method unmangle 516Method wordwrap 516Method writeNewPPage 516Method writeSource 516

Package Cpdf Procedural Elements 518class.ezpdf.php 518

Package Cpdf Classes 519Class Cezpdf 519

Var $ez 519Var $ezPageCount 519Var $ezPages 519Var $y 519Constructor Cezpdf 519Method alink 519Method execTemplate 520Method ezColumnsStart 520Method ezColumnsStop 520Method ezGetCurrentPageNumber 520Method ezImage 520Method ezInsertMode 520Method ezNewPage 520

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 39: PhpDocumentor 1.2.2 Manual

Method ezOutput 520Method ezProcessText 520Method ezPRVTaddPageNumbers 520Method ezPRVTcleanUp 520Method ezPrvtGetTextWidth 520Method ezPRVTpageNumberSearch 520Method ezPrvtTableColumnHeadings 520Method ezPrvtTableDrawLines 520Method ezSetCmMargins 520Method ezSetDy 520Method ezSetMargins 520Method ezSetY 520Method ezStartPageNumbers 520Method ezStopPageNumbers 520Method ezStream 520Method ezTable 520Method ezText 520Method ezWhatPageNumber 520Method ilink 520Method loadTemplate 520Method uline 520

Class Cpdf 520Var $addLooseObjects 521Var $arc4 521Var $arc4_objnum 521Var $callback 521Var $catalogId 521Var $checkpoint 521Var $currentBaseFont 522Var $currentColour 522Var $currentContents 522Var $currentFont 522Var $currentFontNum 522Var $currentLineStyle 522Var $currentNode 522Var $currentPage 522Var $currentStrokeColour 523Var $currentTextState 523Var $destinations 523Var $encrypted 523Var $encryptionKey 523Var $fileIdentifier 523Var $firstPageId 523Var $fontFamilies 524Var $fonts 524Var $infoObject 524Var $looseObjects 524Var $messages 524Var $nCallback 524

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 40: PhpDocumentor 1.2.2 Manual

Var $nStack 525Var $nStateStack 525Var $numFonts 525Var $numImages 525Var $numObj 525Var $numPages 525Var $objects 525Var $options 525Var $procsetObjectId 526Var $stack 526Var $stateStack 526Var $wordSpaceAdjust 526Constructor Cpdf 526Method addDestination 526Method addImage 527Method addInfo 527Method addInternalLink 527Method addJpegFromFile 527Method addLink 527Method addMessage 527Method addObject 527Method addPngFromFile 527Method addText 527Method addTextWrap 527Method ARC4 527Method ARC4_init 528Method checkAllHere 528Method closeObject 528Method curve 528Method ellipse 528Method encryptInit 528Method filledEllipse 528Method filledRectangle 528Method getFirstPageId 528Method getFontDecender 528Method getFontHeight 529Method getTextWidth 529Method line 529Method md5_16 529Method newPage 529Method openHere 529Method openObject 529Method output 529Method o_action 529Method o_annotation 529Method o_catalog 530Method o_contents 530Method o_destination 530Method o_encryption 530

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 41: PhpDocumentor 1.2.2 Manual

Method o_font 530Method o_fontDescriptor 530Method o_fontEncoding 530Method o_image 530Method o_info 530Method o_outlines 530Method o_page 530Method o_pages 530Method o_procset 531Method o_viewerPreferences 531Method partEllipse 531Method polygon 531Method rectangle 531Method reopenObject 531Method restoreState 531Method saveState 531Method selectFont 531Method setColor 531Method setEncryption 532Method setFontFamily 532Method setLineStyle 532Method setPreferences 532Method setStrokeColor 532Method stopObject 532Method stream 532Method transaction 532

Package HTML_TreeMenu Procedural Elements 534file_dialog.php 534new_phpdoc.php 535

Function getDir 535Function recurseDir 535Function switchDirTree 535Function vdump_par 535

Package HTML_TreeMenu Classes 536Class DirNode 536

Var $path 536Constructor DirNode 536

Class HTML_TreeMenu 536Var $items 537Constructor HTML_TreeMenu 537Method addItem 537

Class HTML_TreeMenu_DHTML 538Var $defaultClass 538Var $images 538Var $isDynamic 538Var $linkTarget 539Var $noTopLevelImages 539Var $userPersistence 539

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 42: PhpDocumentor 1.2.2 Manual

Constructor HTML_TreeMenu_DHTML 539Method toHTML 539

Class HTML_TreeMenu_Listbox 540Var $indentChar 540Var $indentNum 540Var $linkTarget 540Var $promoText 541Constructor HTML_TreeMenu_Listbox 541Method toHTML 541

Class HTML_TreeMenu_Presentation 541Var $menu 542Constructor HTML_TreeMenu_Presentation 542Method printMenu 542

Class HTML_TreeNode 542Var $cssClass 543Var $ensureVisible 543Var $events 543Var $expanded 543Var $icon 543Var $isDynamic 543Var $items 544Var $link 544Var $parent 544Var $text 544Constructor HTML_TreeNode 544Method addItem 545Method setOption 545

Package Smarty Procedural Elements 548Config_File.class.php 548Smarty.class.php 549

Define DIR_SEP 549Define SMARTY_DIR 549Define SMARTY_PHP_ALLOW 550Define SMARTY_PHP_PASSTHRU 550Define SMARTY_PHP_QUOTE 550Define SMARTY_PHP_REMOVE 550

Smarty_Compiler.class.php 551

Package Smarty Classes 552Class Config_File 552

Var $booleanize 552Var $fix_newlines 552Var $overwrite 552Var $read_hidden 553Var $_config_data 553Var $_separator 553Constructor Config_File 553Method clear 553Method get 553

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 43: PhpDocumentor 1.2.2 Manual

Method get_file_names 554Method get_key 554Method get_section_names 554Method get_var_names 554Method load_file 555Method set_path 555Method _parse_config_block 555Method _set_config_var 555Method _trigger_error_msg 555

Class Smarty 556Var $autoload_filters 556Var $cache_dir 556Var $cache_handler_func 556Var $cache_lifetime 557Var $cache_modified_check 557Var $caching 557Var $compiler_class 557Var $compiler_file 558Var $compile_check 558Var $compile_dir 558Var $compile_id 558Var $config_booleanize 558Var $config_class 559Var $config_dir 559Var $config_fix_newlines 559Var $config_overwrite 559Var $config_read_hidden 559Var $debugging 559Var $debugging_ctrl 560Var $debug_tpl 560Var $default_modifiers 560Var $default_template_handler_func 560Var $force_compile 561Var $global_assign 561Var $left_delimiter 561Var $php_handling 561Var $plugins_dir 562Var $request_vars_order 562Var $right_delimiter 562Var $secure_dir 562Var $security 562Var $security_settings 563Var $template_dir 563Var $trusted_dir 563Var $undefined 563Var $use_sub_dirs 564Constructor Smarty 564Method append 564Method append_by_ref 564

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 44: PhpDocumentor 1.2.2 Manual

Method assign 564Method assign_by_ref 565Method clear_all_assign 565Method clear_all_cache 565Method clear_assign 565Method clear_cache 565Method clear_compiled_tpl 566Method config_load 566Method display 566Method fetch 567Method get_config_vars 567Method get_registered_object 567Method get_template_vars 567Method is_cached 568Method load_filter 568Method register_block 568Method register_compiler_function 568Method register_function 569Method register_modifier 569Method register_object 569Method register_outputfilter 569Method register_postfilter 570Method register_prefilter 570Method register_resource 570Method template_exists 570Method trigger_error 571Method unregister_block 571Method unregister_compiler_function 571Method unregister_function 571Method unregister_modifier 571Method unregister_object 572Method unregister_outputfilter 572Method unregister_postfilter 572Method unregister_prefilter 572Method unregister_resource 572Method _assign_smarty_interface 573Method _generate_debug_output 573

Class Smarty_Compiler 573Constructor Smarty_Compiler 573Method _add_plugin 573Method _compile_block_tag 574Method _compile_capture_tag 574Method _compile_compiler_tag 574Method _compile_custom_tag 575Method _compile_file 575Method _compile_foreach_start 575Method _compile_if_tag 575Method _compile_include_php_tag 576Method _compile_include_tag 576

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 45: PhpDocumentor 1.2.2 Manual

Method _compile_insert_tag 576Method _compile_plugin_call 576Method _compile_registered_object_tag 577Method _compile_section_start 577Method _compile_smarty_ref 577Method _compile_tag 577Method _expand_quoted_text 578Method _load_filters 578Method _parse_attrs 578Method _parse_conf_var 578Method _parse_is_expr 578Method _parse_modifiers 578Method _parse_parenth_args 579Method _parse_section_prop 579Method _parse_var 579Method _parse_vars_props 579Method _parse_var_props 580Method _syntax_error 580

block.strip.php 581Function smarty_block_strip 581

block.textformat.php 582Function smarty_block_textformat 582

function.assign.php 583Function smarty_function_assign 583

function.assign_debug_info.php 584Function smarty_function_assign_debug_info 584

function.config_load.php 585Function smarty_function_config_load 585

function.counter.php 586Function smarty_function_counter 586

function.cycle.php 587Function smarty_function_cycle 587

function.debug.php 589Function smarty_function_debug 589

function.eval.php 590Function smarty_function_eval 590

function.fetch.php 591Function smarty_function_fetch 591

function.html_checkboxes.php 592Function smarty_function_html_checkboxes 592Function smarty_function_html_checkboxes_output 593

function.html_image.php 594Function smarty_function_html_image 594

function.html_options.php 596Function smarty_function_html_options 596Function smarty_function_html_options_optgroup 596Function smarty_function_html_options_optoutput 596

function.html_radios.php 597Function smarty_function_html_radios 597

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 46: PhpDocumentor 1.2.2 Manual

Function smarty_function_html_radios_output 598function.html_select_date.php 599

Function smarty_function_html_select_date 599function.html_select_time.php 601

Function smarty_function_html_select_time 601function.html_table.php 602

Function smarty_function_html_table 602Function smarty_function_html_table_cycle 603

function.mailto.php 604Function smarty_function_mailto 604

function.math.php 606Function smarty_function_math 606

function.popup.php 607Function smarty_function_popup 607

function.popup_init.php 608Function smarty_function_popup_init 608

function.var_dump.php 609Function smarty_function_var_dump 609

modifier.capitalize.php 610Function smarty_modifier_capitalize 610

modifier.cat.php 611Function smarty_modifier_cat 611

modifier.count_characters.php 612Function smarty_modifier_count_characters 612

modifier.count_paragraphs.php 613Function smarty_modifier_count_paragraphs 613

modifier.count_sentences.php 614Function smarty_modifier_count_sentences 614

modifier.count_words.php 615Function smarty_modifier_count_words 615

modifier.date_format.php 616Function smarty_modifier_date_format 616

modifier.debug_print_var.php 618Function smarty_modifier_debug_print_var 618

modifier.default.php 619Function smarty_modifier_default 619

modifier.escape.php 620Function smarty_modifier_escape 620

modifier.htmlentities.php 621Function smarty_modifier_htmlentities 621

modifier.indent.php 622Function smarty_modifier_indent 622

modifier.lower.php 623Function smarty_modifier_lower 623

modifier.nl2br.php 624Function smarty_modifier_nl2br 624

modifier.rawurlencode.php 625Function smarty_modifier_rawurlencode 625

modifier.regex_replace.php 626

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 47: PhpDocumentor 1.2.2 Manual

Function smarty_modifier_regex_replace 626modifier.replace.php 627

Function smarty_modifier_replace 627modifier.spacify.php 628

Function smarty_modifier_spacify 628modifier.string_format.php 629

Function smarty_modifier_string_format 629modifier.strip.php 630

Function smarty_modifier_strip 630modifier.strip_tags.php 631

Function smarty_modifier_strip_tags 631modifier.truncate.php 632

Function smarty_modifier_truncate 632modifier.upper.php 633

Function smarty_modifier_upper 633modifier.wordwrap.php 634

Function smarty_modifier_wordwrap 634outputfilter.trimwhitespace.php 635

Function smarty_outputfilter_trimwhitespace 635Function smarty_outputfilter_trimwhitespace_replace 635

shared.escape_special_chars.php 636Function smarty_function_escape_special_chars 636

shared.make_timestamp.php 637Function smarty_make_timestamp 637

Appendices 638Appendix A - Class Trees 639

phpDocumentor 639HTML_TreeMenu 643Converters 644Cpdf 645Smarty 645tests 645

Appendix B - README/CHANGELOG/INSTALL 646ChangeLog 647FAQ 677INSTALL 680README 682

Appendix C - Source Code 686Package tests 687source code: builder.php 688source code: config.php 690source code: top.php 699source code: phpdoc.php 700source code: common.inc.php 707source code: find_phpdoc.php 710Package tests 710source code: file_dialog.php 711source code: new_phpdoc.php 715

Appendix D - Todo List 725

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 48: PhpDocumentor 1.2.2 Manual

phpDocumentor Guide to CreatingFantastic Documentation

What makes good documentation? This is unanswerable, but there are a few things tokeep in mind

Why write good documentation for open source code?

Writing good documentation is essential to the success of any software project. The quality of documentation canbe even more important than the quality of the code itself, as a good first impression will prompt developers to lookfurther into your code. phpDocumentor is designed to make it easier to create documentation. phpDocumentoreven makes it possible to generate separate sets of documentation from the same source!

Writing Great Documentation

Consider the audience

The first question any writer must ask is "Who is my audience?" This will answer many questions. For mostsoftware, such as any MS product, the software is intended only to be used. The programmers are the only peoplewho have access to the source code. The challenge in this case is to write good documentation for end-users.

When writing documentation for an open-source project intending to be both used and extended, this challenge ismagnified by the fact that many people will also intend to extend the source, or even find obscure bugs and fixthem. These two audiences tend to be opposed to each other in their needs.

An end-user generally wants:

Instruction-style writing, that explains and describes general concepts more than how a particular variable isused Interface information only, no low-level details Examples of how to use, and tutorials

Whereas a programmer may want in addition:

Details on how program elements interact, which elements use others Where in the source code an action or series of actions occurs How to extend the code to add new functionality

These two kinds of users can not be serviced by just API documentation or just tutorials, but a subtle blend of thetwo.

Page 1 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 49: PhpDocumentor 1.2.2 Manual

Using phpDocumentor to make documentation for two separate audiences

In essence, there may need to be two separate sets of documentation! phpDocumentor can be used to create thisoption using a few things. First, using the command-line file-selection options, one can write two sets ofdocumentation, one for end-users, and the other for programmers, and put them in different subdirectories. Forinstance, one could put enduser docs in "enduser/tutorials" and programmer docs in "programmer/tutorials." Inaddition, using the @access tag, one can mark programmer-level elements with @access private, and they will beignored by default. The @internal tag and inline {@internal}} inline tag construct can be used to markdocumentation that is low-level or internal to a smaller audience of developers. When creating programmerdocumentation, turn on the parse private option (see -pp, --parseprivate), and the low-level detail will be generated.

More important, the in-code documents in your DocBlocks must be written for both end-users and programmerswherever possible.

phpDocumentor uses the chaining feature of tutorials to link together related documentation like chapters in abook, and this is another way to organize documentation. Experiment, and find what's best for your project'sneeds.

Tips on Revising

There are many ways of creating good documentation, but perhaps the best is to read what you have written fromdifferent perspectives. Open up your documentation, and try to use it to figure out your software project. If this isdifficult, go back and edit or rewrite. Remove anything that is confusing or unnecessary, make sure everything isthere that is needed, and then when it seems good, ask a php user that doesn't know your project, or even a non-programmer to read it and use their reactions to tailor the documentation.

Conclusion

The use of phpDocumentor will definitely improve the look and feel of your documentation, but don't stop there, letit help you to create truly dynamic documents that are easily maintained and kept up-to-date. After all, great docsfor great programs will help to secure PHP's rightful throne as the best out there!

Page 2 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 50: PhpDocumentor 1.2.2 Manual

http://phpdocu.sourceforge.net Tutorial

learn how to use phpDocumentor to document, and its internals

Introduction

phpDocumentor is the most advanced automatic documentation system written for PHP, in PHP. This package hasmany features:

New Exciting new tokenizer-based parser is literally twice as fast as previous parser! New @category tag, useful for peardoc2 and other uses. New new CSV:dia2code Converter generates output that can be used to create a UML diagram, and generatecode from the diagram using Harald Fielkers http://sf.net/projects/dia2code New versatile @internal, inline {@internal}}, @example tags New Brand new extensive phpDocumentor manual New extended/tutorial documentation in docbook format with linking to any element and to otherdocumentation, including sub-sections, from the source code (see phpDocumentor Tutorials) New docblock templates to cut down on repetition New {@source} inline tag to display function source New XML:DocBook:peardoc2 templates for PEAR developers New Greater ease of extending a Converter, see Converter Manual New Options are moved from source code to phpDocumentor.ini, see phpDocumentor.ini - globalconfiguration options ability to parse any PHP file, regardless of documentation format conforms loosely to the http://java.sun.com/docs/books/jls/first_edition/html/18.doc.html, and will be familiar toJava programmers documents all includes, constants, functions, static functions, classes, methods, static variables, classvariables, and can document global variables and external tutorials auto-linking to pre-defined PHP functions Output in HTML, CHM, PDF, XML DocBook formats templateable with many bundled templates automatic linking to elements in any documented package documents name conflicts between packages to help avoid PHP errors documentation CVS directly.

Page 3 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 51: PhpDocumentor 1.2.2 Manual

support for JavaDoc doclet-like output through Converters error/warning tracking system extreme class intelligence: inherits documentation, package complete phpdoc.de DocBlock tag support. Additions include @var, @magic, @deprec, @todo, andphpdoc.de parsing of @param. alphabetical indexing of all elements by package and overall class trees MUCH more than just this short list

phpDocumentor Basics

Starting Out From Scratch

The documentation process begins with the most basic element of phpDocumentor: a Documentation block orDocBlock. A basic DocBlock looks like this:

1 /**2 *3 */

A DocBlock is an extended C++-style PHP comment that begins with "/**" and has an "*" at the beginning ofevery line. DocBlocks precede the element they are documenting.

Caution

Any line within a DocBlock that doesn't begin with a * will be ignored. To document function "foo()", place the DocBlock immediately before the function declaration:

1 /**2 * Defies imagination, extends boundaries and saves the world ...all before breakfast!3 */4 function foo()5 {6 }

This example will apply the DocBlock to "define('me',2);" instead of to "function foo()":

Page 4 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 52: PhpDocumentor 1.2.2 Manual

1 /**2 * DocBlock for function foo?3 *4 * No, this will be for the constant me!5 */6 define('me',2);7 function foo($param = me)8 {9 }

define() statements, functions, classes, class methods, and class vars, include() statements, and global variablescan all be documented, see Elements of the source code that can be documented.

DocBlocks

A DocBlock contains three basic segments in this order:

Short Description Long Description Tags

The Short Description starts on the first line, and can be terminated with a blank line or a period. A period insidea word (like example.com or 0.1 %) is ignored. If the Short Description would become more than three lines long,only the first line is taken. The Long Description continues for as many lines as desired and may contain htmlmarkup for display formatting. Here is a sample DocBlock with a Short and a Long Description:

1 /**2 * return the date of Easter3 * 4 * Using the formula from "Formulas that are way too complicated for anyone to5 * ever understand except for me" by Irwin Nerdy, this function calculates the6 * date of Easter given a date in the Ancient Mayan Calendar, if you can also7 * guess the birthday of the author.8 */

Optionally, you may enclose all paragraphs in a <p></p> tag. Be careful, if the first paragraph does notbegin with <p>, phpDocumentor will assume that the DocBlock is using the simple double linebreak to defineparagraph breaks as in:

1 /**2 * Short desc3 *4 * Long description first sentence starts here5 * and continues on this line for a while6 * finally concluding here at the end of7 * this paragraph8 *

Page 5 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 53: PhpDocumentor 1.2.2 Manual

9 * The blank line above denotes a paragraph break10 */

Here is an example of using <p>

1 /**2 * Short desc3 *4 * <p>Long description first sentence starts here5 * and continues on this line for a while6 * finally concluding here at the end of7 * this paragraph</p>8 * This text is completely ignored! it is not enclosed in p tags9 * <p>This is a new paragraph</p>10 */

phpDocumentor also supports JavaDoc's DocBlock format through the command-line option -j, --javadocdesc. Due to the non-xhtml compliant unmatched p tag, we highly recommend you avoid this syntax whenever possible

1 /**2 * <p>3 * Short desc is only to the first period.4 * This means a sentence like:5 * "Parses Mr./Mrs. out of $_GET." will6 * parse a short description of "Parses Mr."7 * which is rather silly. Long description is8 * the entire DocBlock description including the9 * Short desc, and paragraphs begin where p is like:10 * <p>11 * The p above denotes a paragraph break12 */

phpDocumentor will convert all whitespace into a single space in the long description, use paragraph breaks todefine newlines, or <pre>, as discussed in the next section

DocBlock Description details

As of phpDocumentor 1.2.0, the long and short description of a DocBlock is parsed for a few select html tags thatdetermine additional formatting. Due to the nature of phpDocumentor's output as multiple-format, straight html isnot allowed in a DocBlock, and will be converted into plain text by all of the converters unless it is one of these tags:

<b> -- emphasize/bold text <code> -- Use this to surround php code, some converters will highlight it <br> -- hard line break, may be ignored by some converters <i> -- italicize/mark as important

Page 6 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 54: PhpDocumentor 1.2.2 Manual

<kbd> -- denote keyboard input/screen display <li> -- list item <ol> -- ordered list <p> -- If used to enclose all paragraphs, otherwise it will be considered text <pre> -- Preserve line breaks and spacing, and assume all tags are text (like XML's CDATA) <samp> -- denote sample or examples (non-php) <ul> -- unordered list <var> -- denote a variable name

Do not think of these tags as text, they are parsed into objects and converted into the appropriate output formatby the converter. So, a b tag may become <emphasis> in DocBook, and a <p> tag might become " " (4 spaces) in the PDF converter! The text output is determined by the template options file options.inifound in the base directory of every template. For instance, the options.ini file for the HTML:frames:defaulttemplate is in phpDocumentor/Converters/HTML/frames/templates/default/options.ini

For the rare case when the text "<b>" is needed in a DocBlock, use a double delimiter as in <<b>>. phpDocumentor will automatically translate that to the physical text "<b>".

Using <code> and <pre>Both <code> and <pre> ignore any html listed above except for theirclosing tags </code> for <code> and </pre> for <pre> New 1.2.0rc1: If you need to use the closing comment "*/" in a DocBlock, use the special escape sequence"{@*}." Here's an example:

1 /**2 * Simple DocBlock with a code example containing a docblock3 *4 * <code>5 * /**6 * * My sample DocBlock in code7 * {@*} 8 * </code>9 */

This will parse as if it were:

1 /**2 * Simple DocBlock with a code example containing a docblock3 *4 * <code>5 * /**6 * * My sample DocBlock in code7 * */7 8 * </ code>9 */

Page 7 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 55: PhpDocumentor 1.2.2 Manual

New 1.2.0rc1: The phpEdit tool supports very clever list extraction from DocBlocks, and now phpDocumentorsupports the same cleverness. This example:

1 /**2 * Simple DocBlock with simple lists3 *4 * Here's a simple list:5 * - item 16 * - item 2, this one7 * is multi-line8 * - item 39 * end of list. Next list is ordered10 * 1 ordered item 111 * 2 ordered item 212 * end of list. This is also ordered:13 * 1. ordered item 114 * 2. ordered item 215 */

phpDocumentor recognizes any simple list that begins with "-", "+", "#" and "o", and any ordered list withsequential numbers or numbers followed by "." as above. The list delimiter must be followed by a space (not atab!) and whitespace must line up exactly, or phpDocumentor will not recognize the list items as being in the samelist.

1 /**2 * Simple DocBlock with screwy lists3 *4 * +not a list at all, no space5 * Here's 3 lists!6 * - item 17 * - item 2, this one8 * is multi-line9 *- item 310 */

For in-depth information on how phpDocumentor parses the description field, see ParserDescCleanup.inc

DocBlock Templates

New for version 1.2.0, phpDocumentor supports the use of DocBlock templates. The purpose of a DocBlocktemplate is to reduce redundant typing. For instance, if a large number of class variables are private, one woulduse a DocBlock template to mark them as private. DocBlock templates simply augment any normal DocBlocksfound in the template block.

A DocBlock template is distinguished from a normal DocBlock by its header. Here is the most basic DocBlocktemplate:

Page 8 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 56: PhpDocumentor 1.2.2 Manual

1 /**#@+2 *3 */

The text that marks this as a DocBlock template is "/**#@+" - all 6 characters must be present. DocBlocktemplates are applied to all documentable elements until the ending template marker:

0 /**#@-*/

Note that all 8 characters must appear as "/**#@-*/" in order for phpDocumentor to recognize them as atemplate. Here is an example of a DocBlock template in action:

1 class Bob2 {3 // beginning of docblock template area4 /**#@+5 * @access private6 * @var string 7 */8 var $_var1 = 'hello';9 var $_var2 = 'my';10 var $_var3 = 'name';11 var $_var4 = 'is';12 var $_var5 = 'Bob';13 var $_var6 = 'and';14 var $_var7 = 'I';15 /**16 * Two words17 */18 var $_var8 = 'like strings';19 /**#@-*/20 var $publicvar = 'Lookee me!';21 }

This example will parse as if it were:

1 class Bob2 {3 // beginning of docblock template area4 /**5 * @access private6 * @var string 7 */8 var $_var1 = 'hello';9 /**10 * @access private11 * @var string 12 */13 var $_var2 = 'my';14 /**15 * @access private16 * @var string

Page 9 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 57: PhpDocumentor 1.2.2 Manual

17 */18 var $_var3 = 'name';19 /**20 * @access private21 * @var string 22 */23 var $_var4 = 'is';24 /**25 * @access private26 * @var string 27 */28 var $_var5 = 'Bob';29 /**30 * @access private31 * @var string 32 */33 var $_var6 = 'and';34 /**35 * @access private36 * @var string 37 */38 var $_var7 = 'I';39 /**40 * Two words41 * @access private42 * @var string 43 */44 var $_var8 = 'like strings';45 var $publicvar = 'Lookee me!';46 }

Note that for $_var8 the DocBlock template merged with the DocBlock. The rules for merging are simple:

The long description of the docblock template is added to the front of the long description. The shortdescription is ignored. All tags are merged from the docblock template

Tags

Tags are single words prefixed by a "@" symbol. Tags inform phpDocumentor how to present information andmodify display of documentation. All tags are optional, but if you use a tag, they do have specific requirements toparse properly.

A list of all possible tags in phpDocumentor follows:

1 /**2 * The short description3 *4 * As many lines of extendend description as you want {@link element} links to an element5 * {@link http://www.example.com Example hyperlink inline link} links to a website. The inline6 * source tag displays function source code in the description:7 * {@source } 8 * 9 * In addition, in version 1.2+ one can link to extended documentation like this10 * documentation using {@tutorial phpDocumentor/phpDocumentor.howto.pkg}11 * In a method/class var, {@inheritdoc may be used to copy documentation from}12 * the parent method13 * {@internal 14 * This paragraph explains very detailed information that will only15 * be of use to advanced developers, and can contain16 * {@link http://www.example.com Other inline links!} as well as text}}17 *

Page 10 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 58: PhpDocumentor 1.2.2 Manual

18 * Here are the tags:19 *20 * @abstract21 * @access public or private22 * @author author name <author@email>23 * @copyright name date24 * @deprecated description25 * @deprec alias for deprecated26 * @example /path/to/example27 * @exception Javadoc-compatible, use as needed28 * @global type $globalvarname 29 or30 * @global type description of global variable usage in a function31 * @ignore32 * @internal private information for advanced developers only33 * @param type [$varname] description34 * @return type description35 * @link URL36 * @name procpagealias37 or38 * @name $globalvaralias39 * @magic phpdoc.de compatibility40 * @package package name41 * @see name of another element that can be documented, produces a link to it in thedocumentation42 * @since a version or a date43 * @static44 * @staticvar type description of static variable usage in a function45 * @subpackage sub package name, groupings inside of a project46 * @throws Javadoc-compatible, use as needed47 * @todo phpdoc.de compatibility48 * @var type a data type for a class variable49 * @version version50 */51 function if_there_is_an_inline_source_tag_this_must_be_a_function()52 {53 ...54 }

In addition, tutorials allow two addition inline tags: {@id}, used to allow direct linking to sections in a tutorial, and{@toc}, used to generate a table of contents from {@id}s in the file. Think of {@id} like an <aname="idname"> HTML tag, it serves the same function.

See inline {@id} and inline {@toc} for detailed information

In the example below, {@id} is used to name the refsect1 "mysection" and the refsect2"mysection.mysubsection" - note that the sub-sections inherit the parent section's id.

Example:

<refentry id="{@id}"> <refsect1 id="{@id mysection}"> <refsect2 id="{@id mysubsection}"> </refsect2> </refsect1> </refentry>

For an in-depth look at phpDocumentor tags, read phpDocumentor tags, and for an in-depth look at inline tags,read phpDocumentor Inline tags.

Page 11 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 59: PhpDocumentor 1.2.2 Manual

Documenting your PHP project

Where to begin

Before you begin documenting your PHP project, you might want to try a test run on your undocumented sourcecode to see what kind of information phpDocumentor will automatically extract from the source code. phpDocumentor is designed to make the task of documenting minimally redundant. This means less work, andbetter, up-to-date documentation with less effort than it used to take.

Caution

phpDocumentor is a great tool, but it will not write good documentation for you. Please read thephpDocumentor Guide to Creating Fantastic Documentation

Elements of the source code that can be documented

Dividing projects into packages

To understand the role of packages and how to use @package, it is important to know the logic behind packagingin PHP. The quest for structured programming led to the invention of functions, then classes, and finally packages. Traditionally, a re-usable software module was a collection of variables, constants and functions that could beused by another software package. PHP is an example of this model, as their are many extensions that consist ofconstants and functions like the tokenizer extension. One can think of the tokenizer extension as a package: it is acomplete set of data, variables and functions that can be used in other programs. A more structured format of thismodel is of course objects, or classes. A class contains variables and functions (but no constants in PHP). Asingle class packages together related functions and variables to be re-used.

phpDocumentor defines package in two ways:

1. Functions, Constants and Global Variables are grouped into files (by the filesystem), which are in turn groupedinto packages using the @package tag in a page-level DocBlock

2. Methods and Class Variables are grouped into classes (by php), which are in turn grouped into packages in aClass DocBlock

These two definitions of package are exclusive. In other words, it is possible to have classes of a differentpackage of the file that contains it! Here's an example:

Caution

It may be possible, but don't put classes into a different package from the file they reside in, that will be veryconfusing and unnecessary. This behavior is deprecated, in version 2.0, phpDocumentor will halt parsingupon this condition.

1 <?php2 /**3 * Pretend this is a file4 *5 * Page-level DocBlock is here because it is the first DocBlock

Page 12 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 60: PhpDocumentor 1.2.2 Manual

6 * in the file, and is immediately followed by the second7 * DocBlock before any documentable element is declared8 * (function, define, class, global variable, include)9 * @package pagepackage10 */11 /**12 * Here is the class DocBlock13 *14 * The class package is different from the page package!15 * @package classpackage16 */17 class myclass18 {19 }20 ?>

For more information on page-level versus class-level packaging, see Procedural Elements

Perhaps the best way to organize packages is to put all procedural code into separate files from classes. http://pear.php.net recommends putting every class into a separate file. For small, utility classes, this may not bethe best solution for all cases, but it is still best to separate packages into different files for consistency.

Advanced phpDocumentor: tutorials and extended Documentation

phpDocumentor developers have received a number of requests to allow linking to external documentation, and tosections of that documentation. If phpDocumentor only could create HTML documents, this would be a simpletask, but the presence of PDF and now XML converters as well as future possibilities complicates this questiontremendously. What is the solution?

Give phpDocumentor the ability to parse external documentation in a common format and then convert it to theappropriate format for each converter. The implementation of this solution in version 1.2.0 is very versatile. Making use of the standard DocBook XML format, external documentation can be designed and then reformattedfor any output. No longer is external documentation tied down to one "look." Here's a short list of the benefits ofthis approach:

Benefits of using DocBook as the format:

DocBook is very similar to HTML at the basic level and very easy to learn. Each template has its own options.ini file which determines how the DocBook tags will be translated into theoutput language - no need to learn xslt. Adding in xslt support will be very easy to allow for future customization

Benefits of integrating tutorials/external documentation into phpDocumentor:

Linking to external documentation from within API docs is possible Linking to API docs from external documentation is also possible Customizable table of contents, both of all tutorials and within a tutorial via inline {@toc} It is possible to create User-level documentation that has direct access to Programmer-level documentation

Page 13 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 61: PhpDocumentor 1.2.2 Manual

User-level documentation generally consists of tutorials and information on how to use a package, and avoidsextreme detail. On the other hand, programmer-level documentation has all the details a programmer needs toextend and modify a package. phpDocumentor has been assisting the creation of programmer-leveldocumentation since its inception. With the addition of tutorials, it can now ease the creation of user-leveldocumentation.

For an in-depth look at how to use tutorials, read phpDocumentor Tutorials

Running phpDocumentor

There are two bundled ways of invoking phpDocumentor, the command-line phpdoc, or the web interfacephpdoc.php/new_phpdoc.php.

Using the new Web Interface docbuilder

The new web interface requires a working installation of PHP with a web server, and must be accessible from thedocument root. Docbuilder is the creation of Andrew Eddies, and it combines some slick formatting with thefunctionality of the old web interface. The docbuilder interface can be accessed via index.html in the installdirectory of phpDocumentor, or the docbuilder subdirectory.

Using the old Web Interface phpdoc.php or new_phpdoc.php

In order to use the web interface, there are a number of factors that must be set up before anything else can occur. First, you need a working web server with php (it had to be said). This manual will not assist with that setup. Next, the phpdoc.php or new_phpdoc.php file needs to be accessible by the webserver. In unix, place a symboliclink using ln -s to the desired interface into the public html directory.

Caution

Security is always an issue with the internet. Do not place phpDocumentor into the web server publiclyavailable path on a server connected to the internet. Make sure that phpDocumentor will not have the powerto overwrite ANY system or user files.

Note that since the webserver runs as user nobody in unix, the generated files will be owned by nobody. Theonly way to change this is to either run phpDocumentor from the command-line or to add a chuser wrapper aroundhttpd. We do not recommend using a chuser wrapper or running phpDocumentor as root. It is much easierand safer to use a config file (see phpDocumentor's dynamic User-defined config files) from the command line.

Using the Command-line tool

Running the command-line in MS Windows

Running phpDocumentor from the command-line is fairly straightforward, even in windows. It is recommended touse the web interface in windows, from a non-publicly accessible server root, as none of the permissions issuesexist that exist in unix. However, to use phpDocumentor from the command line is possible. First, put the locationof php into the system path, then type:

C:\>php-cli C:\path\to\phpdoc\phpdoc [commandline]

Page 14 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 62: PhpDocumentor 1.2.2 Manual

An alternative is to edit the phpdoc.bat file, and place phpdoc in the path, then you can run phpdoc as a normalcommand.

Running the command-line in unix

Running the command-line tool phpdoc is very easy in unix:

.\phpdoc [commandline]

-c, --config

Use this option to load a config file (see phpDocumentor's dynamic User-defined config files)

"phpdoc -c default" will load the default.ini file

-cp, --converterparams

This option is only used to pass dynamic parameters to extended converters. The options passed should beseparated by commas, and are placed in the global variable $_phpDocumentor_setting['converterparams'], anarray. It is the responsibility of the Converter to access this variable, the code included with phpDocumentor doesnothing with it.

-ct, --customtags

Use this option to specify tags that should be included in the list of valid tags for the current run of phpdoc

"phpdoc -ct mytag,anothertag" will tell phpDocumentor to parse this DocBlock:

1 /**2 * @mytag this is my tag3 * @anothertag this is another tag4 */

without raising any errors, and include the tags in the known tags list for the template to handle. Note that inversion 1.2.0+, the unknown_tags array is passed to templates.

-dn, --defaultcategoryname

This will tell phpDocumentor to group any uncategorized elements into the primary categoryname. If not specified,the primary category is "default." The category should be specified using the @category tag.

1 /**2 * This package has no category and will be grouped into the default category unless -dccategoryname is used3 * @package mypackage4 */5 class nocategory6 {

Page 15 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 63: PhpDocumentor 1.2.2 Manual

7 }

-dn, --defaultpackagename

Use this option to tell phpDocumentor what the primary package's name is. This will also tell phpDocumentor togroup any unpackaged elements into the primary packagename. If not specified, the primary package is "default"

1 /**2 * This class has no package and will be grouped into the default package unless -dn packagename isused3 */4 class nopackage5 {6 }

-d, --directory

This or the -f option must be present, either on the command-line or in the config file.

Unlike -f, -d does not accept wildcards. Use -d to specify full paths or relative paths to the current directory thatphpDocumentor should recursively search for documentable files. phpDocumentor will search through allsubdirectories of any directory in the command-line list for tutorials/ and any files that have valid .php extensions asdefined in phpDocumentor.ini. For example:

"phpdoc -d relative/path/to/dir1,/fullpath/to/here,.."

-ed, --examplesdir

The -ed option is used to specify the full path to a directory that example files are located in. This command-linesetting affects the output of the @example tag.

"phpdoc -ed /fullpath/to/examples"

-f, --filename

This or the -d option must be present, either on the command-line or in the config file.

This option is used to specify individual files or expressions with wildcards * and ?. Use * to match any string,and ? to match any single character.

phpdoc -f m*.p* will match myfile.php, mary_who.isthat.phtml, etc. phpdoc -f /path/m* will match /path/my/files/here.php, /path/mommy.php /path/mucho/grande/what.doc, etc. phpdoc -f file?.php will match file1.php, file2.php and will not match file10.php

-h, --hidden

Page 16 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 64: PhpDocumentor 1.2.2 Manual

Use this option to tell phpDocumentor to parse files that begin with a period (.)

-i, --ignore

Use the -i option to exclude files and directories from parsing. The -i option recognizes the * and ? wildcards, like -fdoes. In addition, it is possible to ignore a subdirectory of any directory using "dirname/"

phpdoc -i tests/ will ignore /path/to/here/tests/* and /path/tests/* phpdoc -i *.inc will ignore all .inc files phpdoc -i *path/to/* will ignore /path/path/to/my/* as well as /path/to/* phpdoc -i *test* will ignore /path/tests/* and /path/here/my_test.php

-it, --ignore-tags

Use the -it option to exclude specific tags from output. This is used for creating multiple sets of documentation fordifferent audiences. For instance, to generate documentation for end-users, it may not be desired to output all@todo tags, so --ignore-tags @todo would be used. To ignore inline tags, surround them with brackets {} like --ignore-tags {@internal}.

--ignore-tags will not ignore the core tags @global, @access, @package, @ignore, @name, @param, @return,@staticvar or @var.

Caution

The --ignore-tags option requires a full tag name like --ignore-tags @todo. --ignore-tags todo will not work.

-j, --javadocdesc

Use this command-line option to enforce strict compliance with JavaDoc. JavaDoc DocBlocks are much lessflexible than phpDocumentor's DocBlocks (see DocBlocks for information).

-o, --output

Use this required option to tell phpDocumentor which Converters and templates to use. In this release, there areseveral choices:

HTML:frames:* - output is HTML with frames.

HTML:frames:default - JavaDoc-like template, very plain, minimal formatting HTML:frames:earthli - BEAUTIFUL template written by Marco von Ballmoos HTML:frames:l0l33t - Stylish template HTML:frames:phpdoc.de - Similar to phpdoc.de's PHPDoc output HTML:frames:phphtmllib - Very nice user-contributed template all of the templates listed above are also available with javascripted expandable indexes, asHTML:frames:DOM/name where name is default, l0l33t, phpdoc.de, etcetera

Page 17 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 65: PhpDocumentor 1.2.2 Manual

HTML:frames:phpedit - Based on output from http://www.phpedit.net Help Generator

HTML:Smarty:* - output is HTML with no frames.

HTML:Smarty:default - Bold template design using css to control layout HTML:Smarty:HandS - Layout is based on PHP, but more refined, with logo image HTML:Smarty:PHP - Layout is identical to the PHP website

CHM:default:* - output is CHM, compiled help file format (Windows help).

CHM:default:default - Windows help file, based on HTML:frames:l0l33t

PDF:default:* - output is PDF, Adobe Acrobat format

PDF:default:default - standard, plain PDF formatting

XML:DocBook:* - output is XML, in DocBook format

XML:DocBook/peardoc2:default - documentation ready for compiling into peardoc for online pear.php.netdocumentation, 2nd revision

In 1.2.0+, it is possible to generate output for several converters and/or templates at once. Simply specify acomma-delimited list of output:converter:template like:

phpdoc -o HTML:frames:default,HTML:Smarty:PHP,HTML:frames:phpedit,PDF:default:default -t ./docs -d .

-pp, --parseprivate

By default, phpDocumentor does not create documentation for any elements marked @access private. This allowscreation of end-user API docs that filter out low-level information that will not be useful to most developers usingyour code. To create complete documentation of all elements, use this command-line option to turn on parsing ofelements marked private with @access private.

-po, --packageoutput

Use this option to remove all elements grouped by @package tags in a comma-delimited list from output. Thisoption is useful for projects that are not organized into separate files for each package. Parsing speed is notaffected by this option, use -i, --ignore whenever possible instead of --packageoutput.

phpdoc -o HTML:frames:default -t ./docs -d . -po mypackage,thatotherpackage will only display documentationfor elements marked with "@package mypackage" or "@package thatotherpackage"

-p, --pear

Use this option to parse a http://pear.php.net-style repository. phpDocumentor will do several "smart" things tomake life easier:

Page 18 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 66: PhpDocumentor 1.2.2 Manual

PEAR-style destructors are automatically parsed If no @package tag is present in a file or class DocBlock, it will guess the package based on subdirectory If a variable or method name begins with "_", it will be assumed to be @access private, unless an @accesstag is present. Constructors are also assumed to be @access private in the current version.

@access and @package should always be explicit!Warnings will be raised for every case above, as @packageshould always be explicit, as should @access private. We do not like to assume that phpDocumentor knows betterthan you what to do with your code, and so will always require explicit usage or raise warnings if phpDocumentordoes make any assumptions.

-q, --quiet

This option tells phpDocumentor to suppress output of parsing/conversion information to the console. Use this forcron jobs or other situations where human intervention will not be needed.

-s, --sourcecode

This option tells phpDocumentor to generate highlighted cross-referenced source code for every file parsed. Thehighlighting code is somewhat unstable, so use this option at your own risk.

-t, --target

Use this to tell phpDocumentor where to put generated documentation. Legal values are paths thatphpDocumentor will have write access and directory creation priveleges.

-tb, --templatebase

-tb accepts a single pathname as its parameter. The default value of -tb if unspecified is <phpDocumentor installdirectory>/phpDocumentor. This raises a very important point to understand. The -tb command-line is designedto tell phpDocumentor to look for all templates for all converters in subdirectories of the path specified. By default,templates are located in a special subdirectory structure.

For the hypothetical outputformat:convertername:templatename -o, --output argument, the directory structure isConverters/outputformat/convertname/templates/templatename/. In addition, Smarty expects to find twosubdirectories, templates/ (containing the Smarty template files) and templates_c/ (which will contain the compiledtemplate files).

"phpdoc -tb ~/phpdoctemplates -o HTML:frames:default" will only work if the directory~/phpdoctemplates/Converters/HTML/frames/default/templates contains all the template files, and~/phpdoctemplates/Converters/HTML/frames/default/templates_c exists.

-ti, --title

Set the global title of the generated documentation

phpDocumentor's dynamic User-defined config files

The new -c, --config command-line options heralds a new era of ease in using phpDocumentor. What used torequire:

phpdoc -t /path/to/output -d path/to/directory1,/another/path,/third/path -f /path/to/anotherfile.php -i *test.php,tests/

Page 19 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 67: PhpDocumentor 1.2.2 Manual

-pp on -ti My Title -o HTML:frames:phpedit

Can now be done in a single stroke!

phpdoc -c myconfig

What makes this all possible is the use of config files that contain all of the command-line information. There aretwo configuration files included in the distribution of phpDocumentor, and both are in the user/ subdirectory. Touse a configuration file "myconfig.ini," simply place it in the user directory, and the command-line "phpdoc -cmyconfig" will tell phpDocumentor to read all the command-line settings from that config file. Configuration filesmay also be placed in another directory, just specify the full path to the configuration file:

phpdoc -c /full/path/to/myconfig.ini

The best way to ensure your config file matches the format expected by phpDocumentor is to copy the default.iniconfig file, and modify it to match your needs. Lines that begin with a semi-colon (;) are ignored, and can be usedfor comments.

phpDocumentor.ini - global configuration options

The phpDocumentor.ini file contains several useful options, most of which will never need to be changed. However, some are useful. The section [_phpDocumentor_options] contains several configuration settings thatmay be changed to enhance output documentation. For Program Location, the relative path is specified asProgram_Root/relativepath/to/file. The prefix "Program_Root" may be changed to any text, including none at all, or"Include ", etc. The [_phpDocumentor_setting] section can be used to specify a config file that should be used bydefault, so phpDocumentor may be run without any command-line arguments whatsoever! The[_phpDocumentor_phpfile_exts] section tells phpDocumentor which file extensions are php files, add any non-standard extensions, such as "class" to this section.

Page 20 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 68: PhpDocumentor 1.2.2 Manual

Documentable PHP Elements

Elements of PHP source that phpDocumentor can automatically document

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected]

Introduction to Documentable Elements

phpDocumentor is capable of automatically documenting include statements, define statements, functions,procedural pages, classes, class variables, and class methods.

Procedural Elements

From phpDocumentor's perspective, the basic container for procedural elements (as in real life) is the file thatcontains them. To reflect this, it is possible to document information about the entire contents of a file. This isaccomplished through the use of a page-level DocBlock (see DocBlocks for basic information on what a DocBlockis). A page-level DocBlock is the only DocBlock that cannot precede the element that it is documenting, as there isno way to precede a file. To solve this issue, the way phpDocumentor finds a page-level DocBlock is to parse thefirst DocBlock in a file as the page-level DocBlock, with certain conditions.

1 <?php2 /**3 * Page-level DocBlock4 */5 define('oops','Page-level DocBlock it is not!');6 ?>

This last example has one DocBlock, and it is the first DocBlock in a file, but it is not a Page-level DocBlock. Howcan phpDocumentor tell the difference between a Page-level DocBlock and any other DocBlock? Simple:

1 <?php2 /**3 * Pretend this is a file4 *5 * Page-level DocBlock is here because it is the first DocBlock6 * in the file, and contains a @package tag7 * @package pagepackage8 */9 define("almost" ,"Now the Page-level DocBlock is for the page, and the Define has nodocblock" );?>

Page 21 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 69: PhpDocumentor 1.2.2 Manual

In phpDocumentor version 1.2.2, a Page-level DocBlock is the first DocBlock in a file if it contains a @packagetag. However, this example will raise a warning like WARNING in test.php on line 8: Page-level DocBlockprecedes "define almost", use another DocBlock to document the source element. You can eliminatethe warning by adding documentation to the define as follows:

1 <?php2 /**3 * Page-level DocBlock4 * @package pagepackage5 */6 /**7 * Define DocBlock8 */9 define("ahhhh" ,"Now the Page-level DocBlock is for the page, and the Define DocBlockfor the define" );10 ?>

Now, the page has its documentation, and the define has its own documentation.

So, a DocBlock is a page-level DocBlock IF AND ONLY IF it is both:

1. The first DocBlock in a file

2. One of: 3. Contains a @package tag

4. Immediately followed by another DocBlock for any documentable PHP element this is deprecated, always

use a @package tag

A Page-level DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentor Tags)plus the following tags:

@package @subpackage

Caution

phpDocumentor will not document a file like the first example, there must be at least one documentable PHPelement in the file.

include/require/include_once/require_once statements

phpDocumentor extracts the filename and attempts to link to documentation for that filename if possible. Include

Page 22 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 70: PhpDocumentor 1.2.2 Manual

statements may only have any of the Standard phpDocumentor Tags

phpDocumentor will attempt to locate the included file in the list of files parsed, and if found will make a link tothat file's documentation.

define statements

A define statement's DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentorTags) plus the following tag:

@name

function declarations

A function's DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentor Tags)plus the following tags:

@global @param @return @staticvar inline {@source}

global variables

A global variable's DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentorTags) plus the following tag:

@name

In addition, the global variable's DocBlock must contain the @global tag.

Class Elements

A class's DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentor Tags) plusthe following tags:

@package @subpackage @static

DocBlock inheritance

Page 23 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 71: PhpDocumentor 1.2.2 Manual

New in version 1.2.0, DocBlock's are inherited by child classes, variables, and methods. There are a few simplerules for inheritance:

tags @author, @version, and @copyright are automatically inherited unless explicitly specified in the DocBlock As in previous versions, @package and @subpackage are inherited unless explicitly specified in theDocBlock. We recommend that you explicitly use @package and @subpackage for every class to avoidproblems with name conflicts that may arise If there is no short description, the short description will be inherited. If there is no long description, the long description will be inherited. If there is a long description, and you still want to inherit the parent's description, use inline {@inheritdoc}

1 /**2 * short desc3 *4 * long desc5 * @package test6 * @author me7 * @version 1.08 * @abstract9 * @copyright never10 */11 class parclass12 {13 }14 15 // inherits entire DocBlock minus @abstract16 class child1 extends parclass17 {18 }19 20 // inherits DocBlock minus @abtract, short desc21 /**22 * overriding short desc23 */24 class child2 extends parclass25 {26 }27 28 // inherits @author, @version, @copyright, @package29 /**30 * overriding short desc31 *32 * overriding long desc33 */34 class child3 extends parclass35 {36 }37 38 // inherits @version, @copyright, @package39 /**40 * overriding short desc41 *42 * overriding long desc43 * @author you44 */45 class child4 extends parclass46 {47 }

class variables

Page 24 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 72: PhpDocumentor 1.2.2 Manual

A class variable's DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentorTags) plus the following tag:

@var

class methods

A method's DocBlock may have any of the standard phpDocumentor Tags (see Standard phpDocumentor Tags)plus the following tags:

@global @param @return @static @staticvar inline {@source}

Page 25 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 73: PhpDocumentor 1.2.2 Manual

phpDocumentor Tutorials

Writing User-level documentation/tutorials with phpDocumentor

What are phpDocumentor-style tutorials/extended documentation?

New in version 1.2.0+, tutorials are the missing link in auto-documentation. We've had many requests fromdevelopers to be able to include links to external documentation, such as the reference of template tags for atemplate engine. The source code would be harder to read if this kind of information was spread along the 150-300 lines it would take to describe the usage. phpDocumentor Tutorials solve the problem of including externaldocumentation by leveraging existing tried-and-true XML DocBook format and the power of phpDocumentor'sinline tags (see phpDocumentor Inline tags). Now, it is possible to cross-reference between externaldocumentation and generated API documentation through the versatile inline {@link}, inline {@tutorial}, and@tutorial tag.

How to write phpDocumentor-style tutorials/extended documentation

Tutorials may be written as any legal DocBook top-level tag (<book>, <chapter>, <article>,<refentry>), but it is highly recommended for any project that may become a part of PEAR to write with the<refentry> tag as the top-level, as this will automatically translate into peardoc2-ready tutorials. Other projectshave no such constraint and may do anything they wish.

Inline Tags that may be used in tutorials

There are several inline tags that may be used in tutorials. The inline {@link} and inline {@tutorial} tags should beused in the same manner as in API source. Inline tags that are specific to tutorials include inline {@id} and inline{@toc}. Inline {@id} is used to mark areas in a similar manner to the way that <a name="section"> in HTML. {@id} will automatically generate an id tag appropriate for the output format. The {@toc} tag is used at the top of atutorial to generate an internal table of contents for that tutorial. The {@toc} tag extracts all sections that have an{@id} tag and uses the title of that section for the generated table of contents. {@id} is also used to marksubsections to allow linking to a sub-section of a tutorial, much the way that in HTML file.html#subsection is used.

Where to put tutorials/extended documentation so phpDocumentor will find it

To simplify linking of tutorials, all tutorials must be in a subdirectory named "tutorials" and must be passed in a -d, --directory or -f, --filename command-line switch.

In addition, tutorials are grouped by the same packages that group documented elements (see Dividing projectsinto packages for more information). To associate a tutorial with a package, place it in a subdirectory of tutorials/named after the package. A tutorial for package "phpDocumentor" goes in "tutorials/phpDocumentor," a tutorial forsubpackage "CHMDefault" of package "Converters" goes in "tutorials/Converters/CHMdefault/" - for an example,see the tutorials/ subdirectory of phpDocumentor.

Naming tutorials: .pkg, .cls, .proc

There are three ways of associating tutorials/extended documentation with the elements they are written for:

Page 26 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 74: PhpDocumentor 1.2.2 Manual

Package-level tutorials always have file extension "pkg" Class-level tutorials always have file extension "cls" Procedural-level tutorials always have file extension "proc"

Package-level documentation

The primary documentation for a package or subpackage should go in a file with the same name as the package orsubpackage. For package "phpDocumentor" the primary package-level documentation is in"tutorials/phpDocumentor/phpDocumentor.pkg" For subpackage "CHMdefault" of package "Converters," theprimary subpackage-level documentation is in "tutorials/Converters/CHMDefault/CHMdefault.pkg"

Other package-level documentation can have any filename, but must have the package-tutorial extension .pkg.

Class-level documentation

Similar to package-level documentation, the primary documentation for a class must have the same name as theclass. The primary documentation for the class "Converter" in package "Converters" will be found in"tutorials/Converters/Converter.cls."

Procedural-level documentation

If a package contains a number of functions, it may be good to include procedural-level documentation. If aparticular file contains a large amount of procedural information that must be documented, it is possible to linktutorials to that file's API docs in the same manner it is possible to link to a class's API docs.

The primary documentation for the procedural component of a PHP file must have the same name as the file. The primary procedural documentation for the file test.php in package "examples" will be found in"tutorials/examples/test.php.proc."

Creating a tutorial hierarchy

If you've ever wanted to separate a large user-level document into separate documents the way the PHP manualdoes, you're in luck. phpDocumentor provides a dynamic and flexible solution to this problem. When parsing atutorial, phpDocumentor looks for an .ini file associated with that tutorial in the same directory. In other words, for"tutorials/phpDocumentor/phpDocumentor.pkg," phpDocumentor will search for a file named"tutorials/phpDocumentor/phpDocumentor.pkg.ini" and will parse out a section named [Linked Tutorials]. Thissection defines every child tutorial of the tutorial phpDocumentor.pkg

In order for a tutorial to be linked to another tutorial as a child, it must be in the same package, subpackage andbe the same tutorial type. tutorials/phpDocumentor/phpDocumentor.pkg cannot havetutorials/phpDocumentor/oops.cls as a child tutorial, nor can it havetutorials/phpDocumentor/oops/almostworks.pkg as a child tutorial. It can have tutorials/phpDocumentor/works.pkgas a child, because the tutorial is in the same package, and is package-level documentation.

To help enforce this rule, the [Linked Tutorials] section is a list of filenames minus path and extension.

Here's an example tutorials/test/test.pkg.ini:

Page 27 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 75: PhpDocumentor 1.2.2 Manual

Example:

[Linked Tutorials] child1 child2 child3

phpDocumentor will search for tutorials/test/child1.pkg, tutorials/test/child2.pkg, and tutorials/test/child3.pkg andlink them in that order. Note that any tutorial can have an .ini file, allowing unlimited depth of tutorials. We don'trecommend going beyond 3 sub-levels, that will probably confuse readers more than it helps them.

For a working example, check out the .ini files in phpDocumentor's own tutorials/ directory.

Converting tutorials/extended documentation toHTML/CHM/PDF/XML/...

Support is built into the existing Converters for automatic conversion of tutorials to the desired output without anyextra work on your part. However, if the output is not quite right, and something needs to be changed, this is veryeasy. For every template of every converter, there is a file in the template directory called "options.ini." In otherwords, for the HTML:frames:default template, the options.ini file isphpDocumentor/Converters/HTML/frames/templates/default/options.ini. Open this file to see all of the templateoptions for conversion of data.

The first section of the .ini file, [desctranslate], is for conversion of DocBlocks and is covered elsewhere (seeDocBlock Description details).

After that comes the section that deals with tutorials, [ppage].

[ppage] section of options.ini

The [ppage] section contains simple rules for transforming DocBook tags and DocBook entities into any output. Re-ordering is supported for attributes and titles only. The best way to learn how to use this simple and powerfultransformation is to study the options.ini files for HTML:frames:phpedit and PDF:default:default

DocBook Entity translation

The translation of entities like &rdquo; is handled through entries in the [ppage] section like the following for html:

[ppage] " = " & = & &rdquo; = &rdquo;

or the following, for PDF:

Page 28 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 76: PhpDocumentor 1.2.2 Manual

[ppage] " = """ & = &&rdquo; = """

Note that to specify a ", it must be enclosed in double quotes, hence the usage of """

DocBook Tag translation

Each tag is transformed using a few possibilities. If a tag is to be simply transformed into another tag (as in<p></p> to <para></para>, use

tagname = newtagname

phpDocumentor will automatically enclose the tag contents with the new tagname and all of its attributes

If the start and endtag should be different, specify the exact text using a slash before the tagname as in:

tagname = <starttext attr="myval" /> /tagname = "\n"

If a tag needs only a new tag and attribute name (for example link and linkend become a and href):

tagname = newtagname tagname->attr = newattrname

If a tag needs only a new tag and attribute name, and a new attribute value (for example table frame="all"becomes table frame="border"):

tagname = newtagname tagname->attr = newattrname tagname->attr+val = newval

If a tag needs only a new tag and attribute name, and two attributes combine into one (for example tablecolsep="1" rowsep="1" becomes table rules="all"):

tagname = newtagname tagname->attr = newattrname tagname->attr2 = newattrname tagname->attr+val|attr2+val = newval

Page 29 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 77: PhpDocumentor 1.2.2 Manual

If an attribute should be ignored:

tagname = newtagname tagname!attr =

If all attributes should be ignored:

tagname = newtagname tagname! =

If a tag should have all attributes and be a single tag (like <br />:

tagname = newtagname tagname/ =

If an attribute should be changed to a new name for all cases (like role changed to class, which would be$attr$role = class):

$attr$attrname = newattrname

Tips for using the .ini files

The parsing of these ini files is performed by phpDocumentor_parse_ini_file(), a much more powerful version ofPHP's http://www.php.net/parse_ini_file built-in function. If a value is encased in quotation marks, it will be strippedof backslashes (\) and used as is. In other words:

Example:

tagname = " Some "enclosed"\n\ttext"

will parse out as tagname = Some "enclosed" text.

Otherwise, this example:

Example:

tagname = Some "enclosed"\n\ttext

will parse out as tagname = Some "enclosed"\n\ttext.

Page 30 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 78: PhpDocumentor 1.2.2 Manual

Note that escaping of quotation marks is not needed, phpDocumentor_parse_ini() only strips the outer tags andthen performs http://www.php.net/stripcslashes on the remaining string.

What next?

Write your tutorials and extended documentation!

Page 31 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 79: PhpDocumentor 1.2.2 Manual

http://phpdocu.sourceforge.net Manual

Introduction to phpDocumentor

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected] Kellin

mailto:[email protected] Juan Pablo Morales

mailto:[email protected] Florian Clever

mailto:[email protected] Dennis Kehrig

mailto:[email protected] Robert Hoffmann

mailto:[email protected] Roberto Berto

mailto:[email protected] Dave Viner

mailto:[email protected] Walter A Boring IV

mailto:[email protected] Mark van Reunswolde

mailto:[email protected] Julien Damon

mailto:[email protected] Harald Fielker

Page 32 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 80: PhpDocumentor 1.2.2 Manual

mailto:[email protected] Marco von Ballmoos

mailto:[email protected] Andrew Eddie

mailto:[email protected] William K. Hardeman

mailto:[email protected]

Documentation

The release of phpDocumentor 1.2.0+ marks a radical shift in the design philosophy of phpDocumentor. No longeris this tool intended only to generate documentation from the source code. Now it facilitates generating user-leveldocumentation for people who only wish to use your software, and not to modify it. This allows completeintegration of all the documentation for the software project, and that means even greater ease of documenting,and ultimately more time to work on making the software work!

The old functionality of phpDocumentor has not been changed, only extended. The old HTMLdefaultConverterhas been ported to a new HTMLframesConverter. The output looks the same, or better, but the templates are nowsmarty.php.net-based templates, and allow much greater customization. To start out right away, readhttp://phpdocu.sourceforge.net Tutorial.

Bugs and Features (guaranteed to be separate entities...)

If you think you've found a bug in phpDocumentor, please check our bug tracker online athttp://sourceforge.net/tracker/?func=browse&group_id=11194&atid=111194 , the bug may have alreadybeen fixed (we develop at a rapid rate). If you don't find it, please submit a bug, and we will attempt to fix it asquickly as possible.

If there is a feature you're dying to have, check our feature tracker athttp://sourceforge.net/tracker/?func=browse&group_id=11194&atid=361194 . Please don't hesitate tolook right at the source code and help apply your feature. We love that, and can easily give you access to the cvs.

How to Help Out

If you would like to help out with phpDocumentor, don't be shy. Email mailto:[email protected] right away andsay you'd like to be added to the developer team. We need people who are willing to develop Converters, translatedocumentation, and handle various bugs and feature requests as they come up. phpDocumentor is fast becomingthe de facto standard of automatic documentors in PHP, so it is in your best interest to make sure it works the wayyou need it to work.

Page 33 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 81: PhpDocumentor 1.2.2 Manual

phpDocumentor tags

How to use tags in DocBlocks

Tags Manual

Welcome to the phpDocumentor Tags Manual

phpDocumentor tags are very similar to tags for the JavaDoc tool for Sun's Java Programming Language. Tagsare only parsed if they are the first thing on a new line of a DocBlock. You may use the @ character freelythroughout documents as long as it does not begin a new line. An example:

1 /**2 * tags demonstration3 * @author this tag is parsed, but this @version tag is ignored4 * @version 1.0 this version tag is parsed5 */

Any tags that phpDocumentor does not recognize will not be parsed, and will be displayed in text flow as if theyare part of the DocBlock long description. The example below displays text "tags demonstration @foobar thisis silly," and also displays the author as "this tag is parsed, but this @version tag is ignored"

1 /**2 * tags demonstration3 * @foobar this is silly4 * @author this tag is parsed, but this @version tag is ignored5 */

Inline tags display in the text flow where they appear, and are not separated from the description. As of version1.2, there are several inline tags. The allowed inline tag list is different for tutorials and regular in-codedocumentation. See phpDocumentor Inline tags for more information.

The example below will display the text "this function works heavily with foo() to rule the world" wherefoo() represents a hyperlink that links to the function foo()'s documentation.

1 /**2 * inline tags demonstration3 *4 * this function works heavily with {@link foo()} to rule the world5 */6 function bar()7 {

Page 34 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 82: PhpDocumentor 1.2.2 Manual

8 }9 10 function foo()11 {12 }

Standard phpDocumentor Tags

Most tags can be in the DocBlock of any documentable PHP element (for a definition of a documentable PHPelement, see Documentable PHP Elements). Here is a list of the standard tags:

@access @author @copyright @deprecated @example @ignore @internal @link @see @since @tutorial @version inline {@internal}} inline {@inheritdoc} inline {@link}

Page 35 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 83: PhpDocumentor 1.2.2 Manual

@abstract

Document an abstract class, class variable or method

Description

Use the @abstract tag to declare a method, class variable, or class that must be re-defined in a child class to bevalid.

Warning:

The @abstract tag is only valid in PHP 4, PHP 5 has a keyword abstract.

Example

Here's an example:

1 /**2 * example of basic @abstract usage in a class3 * Use this if every single element of the class is abstract4 * @abstract5 */6 class myabstractclass7 {8 function function1($baz)9 {10 ...11 }12 13 function function2()14 {15 ...16 }17 }

Page 36 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 84: PhpDocumentor 1.2.2 Manual

@access

Access control for an element. @access private prevents documentation of thefollowing element (if enabled).

Description

@access controls phpDocumentor's documentation of an element.

If @access is private, the element will not be documented unless specified by command-line switch --parseprivate

Example

phpDocumentor displays a @version string without modification, so it may be used in any way you'd like:

1 /**2 * function func1, public access is assumed3 */4 function func1()5 {6 }7 8 /**9 * function func2, access is private, will not be documented10 * @access private11 */12 function func2()13 {14 }15 16 /**17 * This is possible, but redundant. An element has @access public by default18 * @access public19 */20 class class121 {22 /**23 * all text in this DocBlock will be ignored, unless command-line switch or24 * setting in phpdoc.inc enables documenting of private elements25 * @access private26 */27 var $private_var;28 /**29 * Protected is allowed, but does absolutely nothing. Use it to inform users30 * that an element should only be referenced by this and child classes,31 * and not directly32 * @access protected33 */34 35 /**36 * this function is documented37 */38 function publicmethod()39 {40 }41 }

Page 37 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 85: PhpDocumentor 1.2.2 Manual

@author

Author of current element

Description

The @author tag is used to document the author of any element that can be documented (global variable, include,constant, function, define, class, variable, method, page). phpDocumentor will take any text between anglebrackets (< and >) and try to parse it as an email address. If successful, it will be displayed with a mailto link in thepage

NEW v1.2 - @author is now inherited by child classes from a parent class, see inline {@inheritdoc}.

Example

1 /**2 * Page-Level DocBlock example.3 * displays as Gregory Beaver<u>[email protected]</u>, where underlined textis a "mailto:[email protected]" link4 * @author Gregory Beaver <[email protected]>5 */6 /**7 * function datafunction8 * another contributor authored this function9 * @author Joe Shmoe10 */11 function datafunction()12 {13 ...14 }

Page 38 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 86: PhpDocumentor 1.2.2 Manual

@category

Specify a category to organize the documented element's package into

Description

The @category tag is used to organize groups of packages together. This is directly applicable to theXML:DocBook/peardoc2 Converter, and can be used by other converters. Other Converters packaged withphpDocumentor ignore the category, but this may change in future versions. It is also possible to dynamicallyspecify category using the -dn, --defaultcategoryname command-line switch.

Example

Here's an example:

1 /**2 * Page-Level DocBlock3 * @package MyPackage4 * @category mycategory5 */6 7 /**8 * @global array used for stuff9 */10 function mine()11 {12 global $baz13 ...14 }

Page 39 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 87: PhpDocumentor 1.2.2 Manual

@copyright

Document Copyright information

Description

The @copyright tag is used to document the copyright information of any element that can be documented (globalvariable, include, constant, function, define, class, variable, method, page). phpDocumentor will display thecopyright string unaltered.

NEW v1.2 - @copyright is now inherited by child classes from a parent class, see inline {@inheritdoc}.

Example

1 /**2 * Page-Level DocBlock example.3 * @author Gregory Beaver <[email protected]>4 * @copyright Copyright &copy; 2002, Gregory Beaver5 */6 /**7 * function datafunction8 */9 function datafunction()10 {11 ...12 }

Page 40 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 88: PhpDocumentor 1.2.2 Manual

@deprecated

Document elements that have been deprecated and should not be used as they may beremoved at any time from a future version

Description

The @deprecated tag is used to document the deprecation version or other information of any element that can bedocumented except for page (global variable, include, constant, function, define, class, variable, method). Ifpresent, phpDocumentor will display the optional version/info string unaltered.

Use @deprecated to notify users of deprecated elements that should not be used any longer

Example

Here's an example:

1 /**2 * @deprecated deprecated since version 2.03 */4 function uselessfunction()5 {6 ...7 }8 9 /**10 * also legal11 * @deprecated12 */13 class stupidclass14 {15 ...16 }

Page 41 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 89: PhpDocumentor 1.2.2 Manual

@example

Include an external example file with syntax highlighting

Description

The example tag can be used to parse an example file for syntax highlighting and linking to documentation. Thisversatile tag attempts to read the file from the full path specified, and will accept any path thathttp://www.php.net/fopen will accept. phpDocumentor checks the path to ensure that the file retrieved has a valid.php extension as defined in phpDocumentor.ini, and then opens the file. It will parse the file, and output syntax-highlighted source with line numbers, links to documentation and will then add a link to the documentation to thatfile.

If given an absolute path, phpDocumentor will not search for the example file any further. If given a relative path(no leading c:\ or /) phpDocumentor searches for examples files first in the directory specified by the -ed, --examplesdir command-line, if present. As of phpDocumentor 1.2.1, it will next search for the file in an examples/subdirectory of the current file's directory. Otherwise, it will search for a subdirectory named "examples" in the top-level parsing directory, and if not found, in the top-level directory.

The top-level parsing directory is simply the directory that every file parsed has in common.

The @filesource tag serves a similar purpose, but instead of parsing a separate file, it parses the current file'ssource.

To do an inline code example, use the html tag <code>

Warning:

@example only works with PHP 4.3.0+ due to the use of the tokenizer extension, which was not stable prior toPHP 4.3.0. Go to http://www.php.net and download PHP 4.3.0 to use @example

Example

Here's an example:

1 /**2 * My function3 *4 * Here is an inline example:5 * <code>6 * <?php7 * echo strlen('6');8 * ?>9 * </code>10 * @example /path/to/example.php How to use this function11 * @example anotherexample.inc This example is in the "examples" subdirectory12 */13 function mine()14 {

Page 42 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 90: PhpDocumentor 1.2.2 Manual

15 }

Page 43 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 91: PhpDocumentor 1.2.2 Manual

@final

Document a class method that should never be overridden in a child class

Description

Use the @final tag to declare a method that cannot be overridden in a child class.

Warning:

The @final tag is only valid in PHP 4, PHP 5 has a keyword final.

Example

Here's an example:

1 /**2 * example of basic @final usage in a class3 */4 class myclass5 {6 /**7 * function1 should never be overridden8 * @final9 */10 function function1($baz)11 {12 ...13 }14 15 function function2()16 {17 ...18 }19 }

Page 44 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 92: PhpDocumentor 1.2.2 Manual

@filesource

create a syntax-highlighted cross-referenced file containing source code of the currentfile and link to it

Description

The @filesource tag can only be used in a page-level DocBlock, it will be ignored anywhere else. phpDocumentorparses the file source of the current file, and outputs syntax-highlighted source code with line numbers, links todocumentation and then adds a link to the generated file in the documentation.

The @example tag serves a similar purpose, but is designed to parse and create a link to an external example file.

Warning:

@filesource only works with PHP 4.3.0+ due to the use of the tokenizer extension, which was not stable priorto PHP 4.3.0. Go to http://www.php.net and download PHP 4.3.0 to use @filesource

Example

Here's an example:

1 /**2 * Contains several example classes that I want to parse but I3 * also want to show the full source4 * @package mypackage5 * @subpackage example6 * @filesource7 */8 /**9 * This class does things10 * @package mypackage11 * @subpackage example12 */13 class oneofmany extends mainclass14 {15 ...

Page 45 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 93: PhpDocumentor 1.2.2 Manual

@global

Document a global variable, or its use in a function/method

Description

Since there is no standard way to declare global variables, phpDocumentor requires that a @global tag be used ina docblock preceding a global variable's definition. To support previous usage of @global, there is an alternatesyntax that applies to DocBlocks preceding a function, used to document usage of global variables. in other words,There are two usages of @global: definition and function usage.

phpDocumentor will not attempt to automatically parse out any global variables. Only one @global tag is allowedper global variable DocBlock. A global variable DocBlock must be followed by the global variable's definitionbefore any other element or DocBlock occurs in the source, or an error will be raised.

datatype should be a valid PHP type or "mixed."

$varname should be the EXACT name of the global variable as it is declared in the source (use @name tochange the name displayed by documentation)

The function/method @global syntax is used to document usage of global variables in a function, and MUST NOThave a $ starting the third word. The datatype will be ignored if a match is made between the declared globalvariable and a variable documented in the project.

phpDocumentor will check to see if the type specified is the name of a class that has been parsed. If so, it willmake a link to that class as the type instead of just the type.

phpDocumentor will display the optional description unmodified

Example

Here's an example of documenting the definition of a global variable:

1 /**2 * example of incorrect @global declaration #13 * @global bool $GLOBALS['baz'] 4 * @author blahblah5 * @version -66 */7 include("file.ext" ); // error - element encountered before global variable declaration,docblock will apply to this include!8 $GLOBALS['baz'] = array('foo','bar');9 10 /** example of incorrect @global declaration #211 * @global parserElement $_Element 12 */13 /**14 * error - this DocBlock occurs before the global variable definition and will apply to the

Page 46 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 94: PhpDocumentor 1.2.2 Manual

function,15 * ignoring the global variable completely16 * /17 $_Element = new parserElement;18 function oopsie()19 {20 ...21 }22 /** example of correct @global declaration,23 * even with many irrelevant things in between24 * @global mixed $_GLOBALS["myvar"] 27 */28 // this is OK29 if ($pre)30 {31 $thisstuff = 'is fine too';32 }33 $_GLOBALS["myvar" ] = array( "this" => 'works just fine');34 35 /**36 * example of using @name with @global37 * the @name tag *must* have a $ in the name, or an error will be raised38 * @global array $GLOBALS['neato'] 39 * @name $neato40 */41 $GLOBALS['neato'] = 'This variable\'s name is documented as $neato, and not as $GLOBALS[\'neato\']';

Here's an example of documenting the use of a global variable in a function/method:

1 /**2 * Used to showcase linking feature of function @global3 */4 class test5 {6 }7 8 /**9 * @global test $GLOBALS['baz'] 10 * @name $bar11 */12 $GLOBALS['bar'] = new test13 14 /**15 * example of basic @global usage in a function16 * assume global variables "$foo" and "$bar" are already documented17 * @global bool used to control the weather18 * @global test used to calculate the division tables19 * @param bool $baz 20 * @return mixed 21 */22 function function1($baz)23 {24 global $foo$bar25 // note that this also works as:26 // global $foo;27 // global $bar;28 if ($baz)29 {30 $a = 5;31 } else32 {33 $a = array(1,4);34 }35 return $a;36 }

Page 47 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 95: PhpDocumentor 1.2.2 Manual

@ignore

Prevent documentation of an element

Description

Use @ignore to prevent phpDocumentor from documenting an element, such as a duplicate element.

Example

Here is an example of how to use @ignore:

1 if ($ostest)2 {3 /**4 * This define will either be 'Unix' or 'Windows'5 */6 define("OS" ,"Unix" );7 } else8 {9 /**10 * @ignore11 */12 define("OS" ,"Windows" );13 }

Page 48 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 96: PhpDocumentor 1.2.2 Manual

@internal

Mark documentation as private, internal to the software project

Description

Use @internal to facilitate the creation of two sets of documentation, one for advanced developers or for internalcompany use, and the other for the general PHP public. Use this tag or its cousin, inline {@internal}}

@internal responds to the command-line -pp, --parseprivate, as both @internal and --parseprivate share thesame purpose. In both cases, the intent is to allow the creation of two sets of documentation, one for public use,and the other for a subset of developers, either the project developers or those who wish to extend the project. Inessence, it allows the creation of both user-level and programmer-level documentation from the same source, andis one of phpDocumentor's most useful features.

Example

Here is an example of how to use @internal and {@internal}}:

1 /**2 * This class does things3 *4 * {@internal To access the company guidelines on modifying this class,5 * see {@link http://www.example.com Company Guidelines}, or contact6 * your supervisor}}7 * Using this class can be very helpful for several reasons. etc. etc.8 * @internal the class uses the private methods {@link _foo()} and9 * {@link _bar()} to do some wacky stuff10 */11 class Doesthings

Page 49 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 97: PhpDocumentor 1.2.2 Manual

@license

Display a hyperlink to a URL for a license

Description

You may use the @license tag to document any element (include, page, class, function, define, method, variable)

URL is any valid Uniform Resource Locator that points to the full text of a license. The description for the licenseis optional

Example

Here's an example:

1 /**2 * Displays <a href="http://opensource.org/licenses/gpl-license.php">GNU PublicLicense</a>3 * @license http://opensource.org/licenses/gpl-license.php GNU Public License4 */5 class opensource_class {...}

Page 50 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 98: PhpDocumentor 1.2.2 Manual

@link

Display a hyperlink to a URL in the documentation

Description

You may use the @link tag to document any element (include, page, class, function, define, method, variable)

Caution

@link assumes the arguments passed are fully-formed URLs. If you want to link to an element'sdocumentation, use @see or inline {@link}

URL is any valid Uniform Resource Locator (http://www.example.com, telnet://example.com,ftp://ftp.example.com, mailto:[email protected], etc.)

Note that as of version 1.2.0, it is possible to specify a short description for the link to use as the link text insteadof the URL.

Example

Here's an example:

1 /**2 * Displays <a href="http://www.example.com">http://www.example.com</a>3 * @link http://www.example.com4 */5 define("TEST_CONSTANT" ,3);6 /**7 * Displays <a href="http://www.example.com">Hello</a>8 * @link http://www.example.com Hello9 */10 define("TEST_CONSTANT2" ,3);

Page 51 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 99: PhpDocumentor 1.2.2 Manual

@name

Specify an alias to use for a procedural page or global variable in displayeddocumentation and linking

Description

phpDocumentor recognizes the @name tag in global variable DocBlocks (in conjunction with @global), and uses itto rename a global variable for documentation to make it more readable. A global variable name MUST begin witha dollar sign ($) or phpDocumentor will ignore the tag and raise an error.

Example

Here's an examples:

1 /**2 * Now, when @global is used in a function, it will link to $baz3 * @name $baz4 * @global $GLOBALS['baz'] 5 */6 $GLOBALS['baz'] = array('foo','bar');7 8 /**9 * @global array used for stuff10 */11 function mine()12 {13 global $baz14 }

Page 52 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 100: PhpDocumentor 1.2.2 Manual

@package

Specify package to group classes or functions and defines into

Description

@package can only be used to document procedural pages or classes.

Packages are used to help you logically group related elements. You write classes to group related functions anddata together, and phpDocumentor represents the contents of files (functions, defines, and includes) as"Procedural Pages." A package is used to group classes and procedural pages together in the samemanner that a directory groups related files together.

If found in a page-level DocBlock, packagename specifies the package that all functions, includes, and defines inthe php file belong to. If found in a class-level DocBlock, packagename specifies the package that the classbelongs to.

Caution

If not present, a class's package is set to default, or the value of the -dn command-line switch, even if thepage-level package is set to another value. This may be changed by the command-line option -dn or --defaultpackagename. PACKAGES MUST BE ONE WORD WITH NO SPACES OR NEWLINESCONTAINING ONLY LETTERS, DIGITS, and "_", "-", "[" or "]"

@package groups php files together for documentation.

There are two ways a @package tag is parsed:

1. page-level package (defines, functions, includes/requires)

2. class-level package (class, all its variables and methods)

If a file contains functions and defines, they will be packaged by a page-level DocBlock. A page-level DocBlock isa DocBlock at the top of a file that precedes another DocBlock. In other words, it is not paired with anyphpDocumentor element (include, function, define, class, class function, class variable).

Example

phpDocumentor parses a DocBlock as a page-level DocBlock if it precedes another DocBlock like this:

1 /**2 * Page-Level DocBlock example.3 * This DocBlock precedes another DocBlock and will be parsed as the page-level. Put your @package

Page 53 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 101: PhpDocumentor 1.2.2 Manual

and @subpackage tags here4 * @package pagelevel_package5 */6 /**7 * function bluh8 */9 function bluh()10 {11 ...12 }

A page is documented as a procedural page if it is parsed, regardless of its content (NEW in 1.0).

A class-level DocBlock is any DocBlock that precedes a class definition in a php file.

1 <?php2 /**3 * class bluh4 * class-level DocBlock example.5 * @package applies_to_bluh6 */7 class bluh8 {9 /**10 * This variable is parsed as part of package applies_to_bluh11 */12 var $foo;13 14 /**15 * So is this function16 */17 function bar()18 {19 }}20 ?>

If no @package tag is specified, the package named "default" will be used, with one major exception. If a class extends a parent class that has a @package tag, it will inherit the package from the parent class. Thiscan be very useful in small projects. HOWEVER, it is highly recommended that a @package tag is used beforeevery class that should have that package to avoid name collisions. What is a name collision? If you aredocumenting two related but separate packages, and both packages contain classes with the same name. Forexample, the tests package included with phpDocumentor contains several files used to verify the eradication ofbugs from phpDocumentor. Several of these files contain classes with the same name as classes inphpDocumentor. phpDocumentor cannot determine the correct parent class automatically and will not inheritpackage at all to avoid a wrong guess. WE HIGHLY RECOMMEND THAT YOU USE @package IN THEDOCBLOCK OF EVERY CLASS OR PROCEDURAL PAGE YOU WISH TO BE IN A PACKAGE.

Elements can also be grouped into subpackages using @subpackage

See also @subpackage

Page 54 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 102: PhpDocumentor 1.2.2 Manual

@param

Document a function parameter

Description

NOTE: as of 0.4.1, @param can document phpdoc.de-style, with optional $paramname

datatype should be a valid PHP type or "mixed." You may document parameters listed or any optionalparamters that will be parsed by standard PHP functions func_num_args()/get_func_arg(). Recommended nameformat for parameters listed with func_get_arg() is:

$paramname if there is only one parameter $paramname,... if the number of parameters is unlimited

phpDocumentor will display the optional description unmodified

Example

Here's an example:

1 /**2 * example of basic @param usage3 * @param bool $baz 4 * @return mixed 5 */6 function function1($baz)7 {8 if ($baz)9 {10 $a = 5;11 } else12 {13 $a = array(1,4);14 }15 return $a;16 }17 18 class class119 {20 /**21 * example of documenting a method, and using optional description with @return22 * @return string de-html_entitied string (no entities at all)23 */24 function bar($foo)25 {26 return strtr($foo,array_flip(get_html_translation_table(HTML_ENTITIES)));27 }28 }29 30 /**31 * Example of documenting undetermined function arguments32 * @param string $foo 33 * @param mixed $foo_desc optional description of foo34 */

Page 55 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 103: PhpDocumentor 1.2.2 Manual

35 function function2($foo)36 {37 echo $foo;38 if (func_num_args == 2)39 {40 echo 'Description: '.func_get_arg(1);41 }42 }43 44 /**45 * Example of unlimited parameters.46 * Returns a formatted var_dump for debugging purposes47 * @param string $s string to display48 * @param mixed $v variable to display with var_dump()49 * @param mixed $v,... unlimited number of additional variables to display with var_dump()50 */51 function fancy_debug($s,$v)52 {53 print $s."<blockquote>\n" ;54 var_dump($v);55 if (func_num_args()> 2)56 {57 for($i=2;$i< func_num_args();$i++)58 {59 $a = func_get_arg($i);60 var_dump($a);61 print "<br>\n" ;62 }}63 print "</blockquote>\n" ;64 }

Page 56 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 104: PhpDocumentor 1.2.2 Manual

@return

Specify the return type of a function or method

Description

The @return tag is used to document the return value of functions or methods. @returns is an alias for @return tosupport tag formats of other automatic documentors

datatype should be a valid PHP type, a class name or "mixed." If a class name is used in the @return tag,phpDocumentor will automatically create a link to that class's documentation. In addition, if a function returnsmultiple possible values, separate them using the | character, and phpDocumentor will parse out any class namesin the return value. phpDocumentor will display the optional description unmodified

Example

Here's an example:

1 /**2 * example of basic @return usage3 * @return mixed 4 */5 function function1($baz)6 {7 if ($baz)8 {9 $a = 5;10 } else11 {12 $a = array(1,4);13 }14 return $a;15 }16 17 class class118 {19 /**20 * example of documenting a method, and using optional description with @return21 * @return string de-html_entitied string (no entities at all)22 */23 function bar($foo)24 {25 return strtr($foo,array_flip(get_html_translation_table(HTML_ENTITIES)));26 }27 28 /**29 * example of using @return with a class name30 * @param integer even or odd integer31 * @return Parser|falsephpDocumentor Parser object or error32 */33 function & factory($number)34 {35 $returnval = true;36 if ($number % 2)37 {38 $returnval = new Parser;39 } else40 {41 $returnval = false;42 }

Page 57 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 105: PhpDocumentor 1.2.2 Manual

43 return $returnval;44 }45 }

Page 58 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 106: PhpDocumentor 1.2.2 Manual

@see

Display a link to the documentation for an element

Description

The @see tag may be used to document any element (global variable, include, page, class, function, define,method, variable)

Caution

@see only displays links to element documentation. If you want to display a hyperlink, use @link or inline{@link}

New in version 1.2: You can link to any defined function in the current php version using the function's name. This linking is done using the standard php function http://www.php.net/get_defined_functions, and so relies on theversion of php that is used to execute phpDocumentor. A benefit of this method is that the function highlighting willautomatically upgrade with a php upgrade without any change to the underlying code. You may also link directly toany portion of the php website using the fake package override PHP_MANUAL (as inPHP_MANUAL#get_defined_functions, or PHP_MANUAL#support.php)

Along with inline {@link}, the @see tag is among the most useful features of phpDocumentor. With this tag, youcan create a link to any element (except include/require) in the documentation with a very wide range of options. The @see parser can be told exactly where to look using some basic punctuation:

:: -- This is the class scope override. Use it to tell the @see parser which class to look in for the elementspecified, like classname::methodname() or classname::$variablename. () -- When present at the end of elementname, like elementname(), this tells the @see parser to search for afunction or method. $ -- When present at the beginning of elementname, like $elementname, this tells the @see parser to searchfor a variable in the current class.

However, @see is also intelligent enough to recognize shorthand. If @see receives an elementname with nopunctuation, it will search for an element in this order:

1. is elementname the name of a class?

2. is elementname the name of a procedural page? (file.ext)

3. is elementname the name of a define?

4. if the DocBlock containing the @see is in a class:

1. is elementname a method?

Page 59 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 107: PhpDocumentor 1.2.2 Manual

2. is elementname a variable?

is elementname a function?

@see parsing is slightly slower when passed an elementname with no punctuation, especially if the elementnameis a function, so use it sparingly in large projects (500+ elements with @sees in their DocBlocks). The best use forpunctuation-less elementname is in a project whose classnames are in flux.

Example

Here's an example of valid @see syntax:

1 /**2 * class 13 * 4 * example of use of the :: scope operator5 * @see subclass::method()6 */7 class main_class8 {9 /**10 * example of linking to same class, outputs <u>main_class::parent_method()</u>11 * @see function parent_method12 */13 var foo = 3;14 15 /**16 * subclass inherits this method.17 * example of a word which is either a constant or class name, in this case a classname18 * @see subclass19 * @see subclass::$foo20 */21 22 function parent_method()23 {24 if ($this-> foo==9) die;25 }26 }27 28 /**29 * this class extends main_class.30 * example of linking to a constant, and of putting more than one element on the same line31 * @see main_class, TEST_CONST32 */33 subclass extends main_class34 {35 /**36 * bar.37 * example of same class lookup - see will look through parent hierarchy to find the method in{ @link main_class}38 * the above inline link tag will parse as <u>main_class</u>39 * @see parent_method()40 */41 var $foo = 9;42 }43 44 define("TEST_CONST" ,"foobar" );

Page 60 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 108: PhpDocumentor 1.2.2 Manual

@since

Document when (at which version) an element was first added to a package

Description

The @since tag may be used to document the release version of any element that can be documented (globalvariable, include, constant, function, define, class, variable, method, page). phpDocumentor will display theversion/info string unaltered.

Use @since to document revisions, as in "This function has been a part of this package since version2.0"

Example

Here's an example:

1 /**2 * Page-level DocBlock3 * @package BigImportantProjectWithLotsofVersions4 * @version 72.55 */6 /**7 * function datafunction8 * @since Version 21.19 */10 function datafunction()11 {12 ...13 }

Page 61 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 109: PhpDocumentor 1.2.2 Manual

@static

Document a static class or method

Description

Use the @static tag to declare a method or class to be static. Static elements can be called without reference toan instantiated class variable, as in class::method().

Example

Here's an example:

1 /**2 * example of basic @static usage in a class3 * Use this if every single method is static4 * @static5 */6 class mystaticclass7 {8 function function1($baz)9 {10 ...11 }12 13 function function2()14 {15 ...16 }17 }18 19 /**20 * example of a class with a single static method21 */22 class myclass23 {24 /**25 * @static26 */27 function mystaticfunction()28 {29 ...30 }31 }32 33 // example of usage of static methods34 mystaticclass::function1();35 mystaticclass::function2();36 37 myclass::mystaticfunction();

Page 62 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 110: PhpDocumentor 1.2.2 Manual

@staticvar

Document a static variable's use in a function/method

Description

Datatype should be a valid PHP type or "mixed."

phpDocumentor will display the optional description unmodified

Example

Here's an example:

1 /**2 * example of basic @staticvar usage in a function3 * @staticvar integer used to calculate the division tables4 * @staticvar array $bar is used to make me happy. Note that $bar is part of the description5 * @param bool $baz 6 * @return mixed 7 */8 function function1($baz)9 {10 static $foo = 6,$bar = array();11 // note that this works as:12 // static $foo = 6;13 // static $bar = array();14 if ($baz)15 {16 $a = 5;17 } else18 {19 $a = array(1,4);20 }21 return $a;22 }

Page 63 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 111: PhpDocumentor 1.2.2 Manual

@subpackage

Specify sub-package to group classes or functions and defines into. Requires@package tag

Description

@subpackage works with @package to group php files together for documentation.

If found in a page-level DocBlock, specifies the sub-package that all functions and defines in the php file belongto. If found in a class-level DocBlock, specifies the sub-package that the class belongs to.

Caution

If @package is not present in the same DocBlock, the @subpackage tag is ignored. A SUBPACKAGE NAMEMUST BE ONE WORD WITH NO SPACES OR NEWLINES CONTAINING ONLY LETTERS, DIGITS, and"_", "-", "[" or "]"

A @subpackage tag is applied to documented elements in the same way that @package is applied.

If a file contains functions and defines, they will be packaged by a page-level DocBlock. A page-level DocBlock isa DocBlock that is not paired with any phpDocumentor element (include, function, define, class, class function,class variable).

Example

phpDocumentor parses a DocBlock as a page-level DocBlock if it precedes another DocBlock like this:

1 /**2 * Page-Level DocBlock example.3 * This DocBlock precedes another DocBlock and will be parsed as the page-level. Put your @packageand @subpackage tags here4 * @package pagelevel_package5 * @subpackage data6 */7 /**8 * function datafunction9 */10 function datafunction()11 {12 ...13 }

A class-level DocBlock is any DocBlock that precedes a class definition in a php file.

Page 64 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 112: PhpDocumentor 1.2.2 Manual

1 <?php2 /**3 * class bluh4 * class-level DocBlock example.5 * @package applies_to_bluh6 * @subpackage bluh7 */8 class bluh9 {10 /**11 * This variable is parsed as part of package applies_to_bluh, and subpackage bluh12 */13 var $foo;14 15 /**16 * So is this function17 */18 function bar()19 {20 }}21 ?>

See also: @package

Page 65 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 113: PhpDocumentor 1.2.2 Manual

@todo

Document changes that will be made in the future

Description

The @todo tag may be used to document future changes to any element that can be documented (global variable,include, constant, function, define, class, variable, method, page). phpDocumentor will display the informationstring unaltered.

Use @todo to document planned changes to an element that have not been implemented

Example

Here's an example:

1 /**2 * Page-level DocBlock3 * @package unfinished4 * @todo finish the functions on this page5 */6 /**7 * function datafunction8 * @todo make it do something9 */10 function datafunction()11 {12 }

Page 66 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 114: PhpDocumentor 1.2.2 Manual

@tutorial

Display a link to the documentation for a tutorial

Description

The @tutorial tag may be used to document any element (global variable, include, page, class, function, define,method, variable)

Caution

@tutorial only displays links to tutorials/extended documentation. If you want to display a hyperlink or link to adocumented element, use @see or @link or inline {@link}

Along with inline {@tutorial}, the @tutorial tag is among the most useful features of phpDocumentor. With thistag, you can create a link to any tutorial or extended documentation. The @tutorial parser can be told exactlywhere to look using a format similar to a URI:

package/ -- Preface to specify a tutorial in a specific package subpackage/ -- Preface to specify a tutorial in a specific package/subpackage #section -- Link to a specific section of the documentation package/subpackage/tutorial.ext#section .subsection -- Link to a specific sub-section of the documentationpackage/subpackage/tutorial.ext#section.subsection

However, @tutorial, like @see, is also intelligent enough to recognize shorthand. The search order for a tutorialis identical to what is specified in @see

Example

Here's an example of valid @tutorial syntax:

1 /**2 * This will link to the phpDocumentor.pkg tutorial if it is unique, regardless3 * of its location4 * @tutorial phpDocumentor.pkg5 */6 class test17 {8 }9 10 /**11 * This will link to the phpDocumentor.pkg tutorial if and only if it is in the12 * phpDocumentor package, any subpackage.13 * @tutorial phpDocumentor/phpDocumentor.pkg14 */15 class test216 {

Page 67 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 115: PhpDocumentor 1.2.2 Manual

17 }18 19 /**20 * This will link to the phpDocumentor.pkg tutorial if and only if it is in the21 * phpDocumentor package, info subpackage.22 * @tutorial phpDocumentor/info/phpDocumentor.pkg23 */24 class test325 {26 }27 28 /**29 * This will link to the phpDocumentor.pkg tutorial, section1 and subsection one30 * @tutorial phpDocumentor.pkg#section1, phpDocumentor.pkg#section1.subsection131 */32 class test433 {34 }

Page 68 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 116: PhpDocumentor 1.2.2 Manual

@uses

Display a link to the documentation for an element, and create a backlink in the otherelement's documentation to this

Description

Caution

Since version 1.2.0beta3, the syntax for @uses has changed. It differs in that @uses now contains adescription of how the element is used and does not allow a comma-delimited list of values any longer.

The @uses tag may be used to document any element (global variable, include, page, class, function, define,method, variable)

Caution

@uses only displays links to element documentation. If you want to display a hyperlink, use @link or inline{@link}

@uses is very similar to @see, see the documentation for @see for details on format and structure. The @usestag differs from @see in two ways. @see is a one-way link, meaning the documentation containing a @see tagcontains a link to other documentation. The @uses tag automatically creates a virtual @usedby tag in the otherdocumentation that links to the documentation containing the @uses tag. In other words, it is exactly like @see,except a return link is added automatically.

The other difference is that @uses only accepts one element to link to, and a description of that element.

Example

Here's an example of valid @uses syntax:

1 /**2 * class 13 * 4 */5 class main_class6 {7 /**8 * @var integer 9 */10 var foo = 3;11 12 /**13 * subclass inherits this method.14 * example of a word which is either a constant or class name,15 * in this case a classname16 * @uses subclass sets a temporary variable17 * @uses subclass::$foo this is compared to TEST_CONST18 * @uses TEST_CONST compared to subclass::$foo, we19 * die() if not found20 */

Page 69 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 117: PhpDocumentor 1.2.2 Manual

21 22 function parent_method()23 {24 if ($this-> foo==9) die;25 $test = new subclass;26 $a = $test-> foo;27 if ($a == TEST_CONST) die;28 }29 }30 31 /**32 * this class extends main_class.33 */34 subclass extends main_class35 {36 /**37 * @var integer 38 */39 var $foo = 9;40 }41 42 define("TEST_CONST" ,"foobar" );

This will parse as if it were:

1 /**2 * class 13 * 4 */5 class main_class6 {7 /**8 * @var integer 9 */10 var foo = 3;11 12 /**13 * subclass inherits this method.14 * example of a word which is either a constant or class name,15 * in this case a classname16 * @uses subclass sets a temporary variable17 * @uses subclass::$foo this is compared to TEST_CONST18 * @uses TEST_CONST compared to subclass::$foo, we19 * die() if not found20 */21 22 function parent_method()23 {24 if ($this-> foo==9) die;25 $test = new subclass;26 $a = $test-> foo;27 if ($a == TEST_CONST) die;28 }29 }30 31 /**32 * this class extends main_class.33 * @usedby main_class::parent_method() sets a temporary variable34 */35 subclass extends main_class36 {37 /**38 * @var integer 39 * @usedby main_class::parent_method() this is compared to TEST_CONST40 */41 var $foo = 9;42 }43 44 /**45 * @usedby main_class::parent_method() compared to subclass::$foo, we46 * die() if not found

Page 70 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 118: PhpDocumentor 1.2.2 Manual

47 */48 define("TEST_CONST" ,"foobar" );

Page 71 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 119: PhpDocumentor 1.2.2 Manual

@var

Document the data type of a class variable

Description

You may use the @var tag to document the data type of class variables.

datatype should be a valid PHP type or "mixed." phpDocumentor will display the optional descriptionunmodified, and defaults to "mixed" if the datatype is not present

Example

Here's an example:

1 class class12 {3 /**4 * example of documenting a variable's type5 * @var string 6 */7 var $variable;8 /**9 * example of documenting a variable's type10 * @var string contains class1 information11 */12 var $variable_with_desc;13 /**14 * this variable is documented as type "mixed" since no @var tag is present15 */16 var $mixed_variable;17 }

Page 72 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 120: PhpDocumentor 1.2.2 Manual

@version

Version of current element

Description

Documents the version of any element, including a page-level block

NEW v1.2 - @version is now inherited by child classes from a parent class, see inline {@inheritdoc}.

Example

phpDocumentor displays a @version string without modification, so it may be used in any way you'd like:

1 /**2 * example of @version tag with CVS tag3 * @version $Id: tags.version.pkg,v 1.5 2003/01/01 07:23:13 CelloG Exp $;4 */5 function datafunction()6 {7 }8 9 /**10 * Custom version string11 * @version customversionstring1.012 */13 class blah14 {15 }

Page 73 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 121: PhpDocumentor 1.2.2 Manual

phpDocumentor Inline tags

How to use Inline tags in DocBlocks and in Tutorials

Inline Tags Manual

Welcome to the phpDocumentor Inline Tags Manual

Unline regular tags (see phpDocumentor tags), Inline tags display in the text flow where they appear. As ofversion 1.2, there are several inline tags. The allowed inline tag list is different for tutorials and regular in-codedocumentation.

Inline tags allowed in both tutorials and DocBlocks include:

inline {@link} inline {@tutorial}

Inline tags allowed in only DocBlocks include:

inline {@source} inline {@inheritdoc}

Inline tags allowed in only tutorials include:

inline {@id} inline {@toc}

The example below will display the text "this function works heavily with foo() to rule the world" wherefoo() represents a hyperlink that links to the function foo()'s documentation.

1 /**2 * inline tags demonstration3 *4 * this function works heavily with {@link foo()} to rule the world. If I want5 * to use the characters " {@link" in a docblock, I just use " {@}link." If6 * I want the characters " {@*}" I use " {@}*}"7 */8 function bar()9 {10 }11 12 function foo()

Page 74 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 122: PhpDocumentor 1.2.2 Manual

Page 75 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 123: PhpDocumentor 1.2.2 Manual

inline {@id}

Used to control XML tutorial ids in refsects

Description

The {@id} inline tag is used only in tutorials/extended documentation. It is very simply designed to solve theproblem of identifying sections for hyperlinking. For instance, in the DocBook Converter, id's are in the formatpackage.packagename[.subpackagename].file[.sectionname], where file is either the classname, function/methodname, or summary. In the other Converters, the id is not nearly as restrictive, but this inline tag allows for thepotential of future converters that are equally exacting. Use <refsect1 id="{@id idname}"> in the tutorial(tutorialname.pkg/tutorialname.cls/tutorialname.proc) to do this.

The {@id} tag is context-sensitive, and will pre-pend the id of the current refsect1, refsect2, or refsect3 to any{@id}, allowing further error control.

Caution

The sectionname may only consist of lower-case letters, numbers, and hyphens "-." No othercharacters are allowed

Here is an example of how {@id} must be used

1 < refentry id="{@id}" >2 < refnamediv>3 < refname> Main Title</ refname>4 < refpurpose> Description of tutorial</ refpurpose>5 </ refnamediv>6 < refsynopsisdiv>7 < refsynopsisdivinfo>8 < author>9 Gregory Beaver10 </ author>11 < copyright> Copyright 2002, Gregory Beaver</ copyright>12 </ refsynopsisdivinfo>13 </ refsynopsisdiv>14 < refsect1 id="{@id section}" >15 < title> First Section Title</ title>16 < para>17 Note that the id parameter must be within quotes18 and there must be no whitespace on either side.19 id=" {@id section}" will break the id parsing20 </ para>21 < para>22 This section's name is 23 "packagesubpackagetutorial.ext.section" by default.24 The HTML/CHM converters name it "section," the XML25 converter names it "package.subpackage.tutorial-ext.section"26 </para>27 <refsect2 id="{@id subsection}">28 <title>Subsection Title</title>29 <para>30 This section inherit's the refsect1's id, and is named31 "packagesubpackagetutorial.ext.section.subsection" or32 "section.subsection" for HTML/CHM, and33 "package.subpackage.tutorial-ext.section.subsection" in XML34 </para>

Page 76 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 124: PhpDocumentor 1.2.2 Manual

35 </refsect2>36 </refsect1>37 </refentry>

Page 77 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 125: PhpDocumentor 1.2.2 Manual

inline {@internal}}

Mark documentation as private, internal to the software project in text flow

Description

Caution

Unlike other inline tags, {@internal}} may contain other inline tags due to its purpose. To terminate an{@internal}} inline tag, you must use two ending brackets "}}"

Use {@internal}} to facilitate the creation of two sets of documentation, one for advanced developers or forinternal company use, and the other for the general PHP public. Use this inline tag or its cousin, @internal

Page 78 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 126: PhpDocumentor 1.2.2 Manual

inline {@inheritdoc}

Used to directly inherit the long description from the parent class in child classes

Description

The {@inheritdoc} inline tag is used in the DocBlocks of classes, methods and class variables of child classes. phpDocumentor will automatically inherit the @author tag, @version tag, and @copyright tag from a parent class. In addition, if there is no documentation comment present, it will inherit the parent's documentation.

Note that if the {@inheritdoc} inline tag is not present, and a child class is undocumented, the child class will stillattempt to inherit documentation from the parent class as is. {@inheritdoc} allows flexibility of where to putdocumentation from the parent class in a child class's documentation.

Example

In some cases, the child class may want to simply augment the parent class's documentation. This is the primarypurpose {@inheritdoc} was designed for. For example:

1 /**2 * Makes bars3 *4 * This class generates bars using the main algorithm.5 */6 class bar7 {8 }9 10 /**11 * Makes chocolate bars12 *13 * There are two aspects to this class.14 * {@inheritdoc } In addition, the foo class15 * makes the bars chocolate16 */17 class foo extends bar18 {19 }

This source code will parse as if it was:

1 /**2 * Makes bars3 *4 * Generates bars using the main algorithm.5 */6 class bar7 {8 }9 10 /**

Page 79 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 127: PhpDocumentor 1.2.2 Manual

11 * Makes chocolate bars12 *13 * There are two aspects to this class.14 * This class generates bars using the main algorithm. In addition, the foo class15 * makes the bars chocolate16 */17 class foo extends bar18 {19 }

Page 80 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 128: PhpDocumentor 1.2.2 Manual

inline {@link}

Display a link to a URL, or link to an element's documentation in the the flow ofdescriptive text

Description

The inline {@link} tag is used to document any element (page, global variable, include, class, function, define,method, variable). New in version 1.2: You can link to any defined function in the current php version using thefunction's name. This linking is done using the standard php function http://www.php.net/get_defined_functions,and so relies on the version of php that is used to execute phpDocumentor. A benefit of this method is that thefunction highlighting will automatically upgrade with a php upgrade without any change to the underlying code. You may also link directly to any portion of the php website using the fake package override PHP_MANUAL (as inPHP_MANUAL#get_defined_functions, or PHP_MANUAL#support.php)

Caution

inline {@link} displays links directly in the natural text flow of a DocBlock. If you want to display linksprominently after descriptive text, use @see or @link

For parameter information, see @see or @link.

Example

The inline {@link} differs from ordinary non-inline tags. Inline tags parse and display their output directly in thedocumentation. In other words, this DocBlock:

1 /**2 * Text with a normal @see and @link tag3 * @see element4 * @link http://www.example.com5 */6 function element()7 {8 }

Parses as (with -o HTML:frames:default):

Example:

<H3>element</H3> <P><B>element ( )</B></P> <!-- ========== Info from phpDoc block ========= --> <b></b> <pre>

Page 81 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 129: PhpDocumentor 1.2.2 Manual

Text with a normal @see and @link tag </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> <DD><b>See</b> - <CODE><ahref="../default/_fake_page_php.html#element">element()</a></CODE></DD> <DD><b>Link</b> - <CODE><ahref="www.example.com">www.example.com</a></CODE></DD> </DL> <HR>

1 /**2 * Text with an {@link http://www.example.com Inline Link to a Hyperlink} and an inline link to{@link element} displays3 * without a break in the flow4 */5 function element()6 {7 }

Parses as (with -o HTML:frames:default):

Example:

<H3>element</H3> <P><B>element ( )</B></P> <!-- ========== Info from phpDoc block ========= --> <b></b> <pre> Text with an <a href="http://www.example.com">Inline Link to a Hyperlink</a> and aninline link to <a href="../default/_fake_page_php.html#element">element()</a> displayswithout a break in the flow </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> </DL> <HR>

Page 82 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 130: PhpDocumentor 1.2.2 Manual

inline {@source}

Display source code of a function or method in the long description

Description

The {@source} inline tag is used in the DocBlock of functions or methods to extract source code of thefunction/method for display in generated documentation. This tag is designed to allow detailed line-by-linedescription of how a function works without having to cut and paste from the source. This allows modification tothe source and automatic update of documentation so that it remains current.

Example

The inline {@source} differs from all ordinary tags. Inline tags parse and display their output directly in thedocumentation. In other words, this DocBlock:

1 /**2 * Text with a normal tag, @copyright3 * @copyright Copyright 2002, Greg Beaver4 */5 function element()6 {7 }

Parses as (with -o HTML:default:default):

Example:

<H3>element</H3> <P><B>element ( )</B></P> <!-- ========== Info from phpDoc block ========= --> <b></b> <pre> Text with a normal tag, @copyright </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> <DD><b>Copyright</b> - <CODE>Copyright 2002, Greg Beaver</CODE></DD> </DL> <HR>

Page 83 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 131: PhpDocumentor 1.2.2 Manual

This DocBlock:

1 /**2 * Text with an inline source tag:3 * {@source } 4 * displays without a break in the flow5 */6 function element($pages)7 {8 if (empty($pages))9 {10 die("<b>ERROR</b>: nothing parsed" );11 }12 }

Parses as (with -o HTML:default:default):

Example:

<H3>element</H3> <P><B>void element ( $pages )</B></P> <P></P> <!-- ========== Info from phpDoc block ========= --> <b>Text with an inline source tag:</b> <pre> <pre><font color="#006600">function </font><fontcolor="#0000CC">element</font><fontcolor="#006600">(</font><fontcolor="#0000CC">$pages</font><font color="#006600">) { if (empty(</font><font color="#0000CC">$pages</font><fontcolor="#006600">)) { die(</font><font color="#CC0000">&quot;<b>ERROR</b>: nothingparsed&quot;</font><font color="#006600">); }}</font></pre> </font> </pre> displays without a break in the flow </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> </DL> <HR>

The {@source tag has two optional parameters, the starting line number to display and the ending line number todisplay. If only the first parameter is present, {@source} will print the source code starting on that line number to

Page 84 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 132: PhpDocumentor 1.2.2 Manual

the end of the function source code. If both parameters are present, {@source} will print an excerpt of the sourcecode beginning on the starting line number, and concluding with the ending line number.

1 /**2 * Text with an inline source tag:3 * {@source 3}4 * displays without a break in the flow5 */6 function element($pages)7 {8 if (empty($pages))9 {10 die("<b>ERROR</b>: nothing parsed" );11 }12 foreach($test as $hello)13 {14 echo " Ilove$hello";15 }16 }

Parses as (with -o HTML:default:default):

Example:

<H3>element</H3> <P><B>void element ( $pages )</B></P> <P></P> <!-- ========== Info from phpDoc block ========= --> <b>Text with an inline source tag:</b> <pre> <pre> <font color="#006600">{ die(</font><font color="#CC0000">&quot;<b>ERROR</b>: nothingparsed&quot;</font><font color="#006600">); } foreach(</font><font color="#0000CC">$test </font><fontcolor="#006600">as </font><fontcolor="#0000CC">$hello</font><font color="#006600">) { echo </font><font color="#CC0000">&quot;I love$hello&quot;</font><font color="#006600">; }}</font></pre> </font> </pre> displays without a break in the flow </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> </DL> <HR>

Page 85 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 133: PhpDocumentor 1.2.2 Manual

1 /**2 * Text with an inline source tag:3 * {@source 3 1}4 * displays without a break in the flow5 */6 function element($pages)7 {8 if (empty($pages))9 {10 die("<b>ERROR</b>: nothing parsed" );11 }12 foreach($test as $hello)13 {14 echo " Ilove$hello";15 }16 }

Parses as (with -o HTML:frames:default):

Example:

<H3>element</H3> <P><B>void element ( $pages )</B></P> <P></P> <!-- ========== Info from phpDoc block ========= --> <b>Text with an inline source tag:</b> <pre> <pre> <font color="#006600">if (empty(</font><fontcolor="#0000CC">$pages</font><font color="#006600">)) </pre> displays without a break in the flow </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> </DL> <HR>

Page 86 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 134: PhpDocumentor 1.2.2 Manual

inline {@toc}

Display a table of contents of all {@id}s declared in a file

Description

The inline {@toc} tag is used as a sub-element of the <refentry> tag to display a table of contents of thecurrent tutorial. This table of contents is generated directly by a call to Converter::formatTutorialTOC().

Example

This sample tutorial:

1 < refentry id="{@id}" >2 < refnamediv>3 < refname>{@} toc} example</ refname>4 < refpurpose> Uses {@}toc} to generate a table of contents</ refpurpose>5 </ refnamediv>6 {@toc}7 < refsect1 id="{@id one}" >8 < title> First section</ title>9 </ refsect1>10 < refsect1 id="{@id two}" >11 < title> Second section</ title>12 < refsect2 id="{@id sub}" >13 < title> Sub-section</ title>14 </ refsect2>15 </ refsect1>16 < refsect1 id="{@id three}" >17 < title> Third section</ title>18 </ refsect1>19 </ refentry>

Will parse as if it were

1 < refentry id="{@id}" >2 < refnamediv>3 < refname>{@} toc} example</ refname>4 < refpurpose> Uses {@}toc} to generate a table of contents</ refpurpose>5 </ refnamediv>6 7 < refsect1>8 < itemizedlist>9 < listitem>< para>{@ tutorial mytutorial#one}</para></listitem>10 < listitem>< para>{@ tutorial mytutorial#two}11 < itemizedlist>12 < listitem>< para>{@ tutorial mytutorial#two.sub}</para></listitem>13 </ itemizedlist>14 </ para></ listitem>15 < listitem>< para>{@ tutorial mytutorial#three}</para></listitem>16 </ refsect1>17 18 < refsect1 id="{@id one}" >19 < title> First section</ title>20 </ refsect1>

Page 87 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 135: PhpDocumentor 1.2.2 Manual

21 < refsect1 id="{@id two}" >22 < title> Second section</ title>23 < refsect2 id="{@id sub}" >24 < title> Sub-section</ title>25 </ refsect2>26 </ refsect1>27 < refsect1 id="{@id three}" >28 < title> Third section</ title>29 </ refsect1>30 </ refentry>

The format of the table of contents is Converter-dependent, and for the converters supplied with phpDocumentor,can be set up through the use of tutorial_toc.tpl in the template for tremendous customization control

Page 88 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 136: PhpDocumentor 1.2.2 Manual

inline {@tutorial}

Display a link to a tutorial in the the flow of descriptive text

Description

The inline {@tutorial} tag is used in any context to link to the documentation for a tutorial.

Caution

inline {@tutorial} displays links directly in the natural text flow of a DocBlock. If you want to display links to atutorial prominently after descriptive text, use @tutorial

Example

The inline {@tutorial} differs from ordinary non-inline tags. Inline tags parse and display their output directly in thedocumentation. In other words, this DocBlock:

1 /**2 * Text with a normal @tutorial tag3 * @tutorial phpDocumentor/phpDocumentor.pkg4 */5 function element()6 {7 }

Parses as (with -o HTML:frames:default):

Example:

<H3>element</H3> <P><B>element ( )</B></P> <!-- ========== Info from phpDoc block ========= --> <b></b> <pre> Text with a normal @tutorial tag </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> <DD><b>Tutorial</b> - <CODE><ahref="../phpDocumentor/tutorial_phpDocumentor.pkg.html">phpDocumentor 1.2.2Tutorial</a></CODE></DD>

Page 89 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 137: PhpDocumentor 1.2.2 Manual

</DL> <HR>

1 /**2 * Text with an inline link to {@tutorial phpDocumentor/phpDocumentor.pkg} displays3 * without a break in the flow4 */5 function element()6 {7 }

Parses as (with -o HTML:frames:default):

Example:

<H3>element</H3> <P><B>element ( )</B></P> <!-- ========== Info from phpDoc block ========= --> <b></b> <pre> Text with an an inline link to <ahref="../phpDocumentor/tutorial_phpDocumentor.pkg.html">phpDocumentor 1.2.2Tutorial</a> displays without a break in the flow </pre> <DL> <DT>Function Parameters:</DT> <DT>Function Info:</DT> </DL> <HR>

Page 90 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 138: PhpDocumentor 1.2.2 Manual

Writing a New Converter

Overview of how to write a new Converter

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected]

Introduction to Converters

This documentation deals only with the advanced programming topic of creating a new output converter. To learnhow to use phpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn howto extend an existing Converter, read Converter Manual

Basic Concepts

Abstract Parsing Data

Source Code Elements

A Converter's job is to take abstract data from parsing and create documentation. What is the abstract data? phpDocumentor is capable of documenting tutorials, and a php file and its re-usable or structurally importantcontents. In other words, phpDocumentor can document:

A XML DocBook-based tutorial (see phpDocumentor Tutorials) Procedural Page (PHP source file) Include Statements Define Statements Global Variables Functions Classes Class Variables Class Methods

phpDocumentor represents these PHP elements using classes:

Page 91 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 139: PhpDocumentor 1.2.2 Manual

parserTutorial parserData, parserPage parserInclude parserDefine parserGlobal parserFunction parserClass parserVar parserMethod

This relationship between the source code and abstract data is quite clear, and very simple. The data membersof each abstract representation correspond with the information needed to display the documentation. All PHPelements contain a DocBlock, and this is represented by a class as well, parserDocBlock. The elements of aDocBlock are simple:

Short Description, containing any number of inline tags Long Description, containing any number of inline tags Tags, some containing any number of inline tags in their general description field

phpDocumentor represents these elements using classes as well:

parserDesc for both short and long descriptions parserInlineTag for inline tags parserTag for regular tags

HTML-specific issues

There are some other issues that Converters solve. In HTML, a link is represented by an <a> tag, but in thePDF Converter, it is represented by a <c:ilink> tag. How can we handle both cases? Through anotherabstract class, the abstractLink and its descendants:

tutorialLink pageLink defineLink globalLink functionLink

Page 92 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 140: PhpDocumentor 1.2.2 Manual

classLink varLink methodLink

Note the absence of an "includeLink" class - this is intentional, as only re-usable elements need to be linked. An include statement is always attached to the file that it is in, and cannot be anywhere else.

These abstract linking classes contain the information necessary to differentiate between the location of any ofthe element's documentation. They are only used to allow linking to documentation, and not to source code. A linkis then converted to the appropriate text representation for the output format by Converter::returnSee() (a href=linkfor html, c:ilink:link for pdf, link linkend=link in xml:docbook, and so on).

The other issues solved by a converter involves html in a DocBlock. To allow better documentation, html isallowed in DocBlocks to format the output. Unfortunately, this complicates output in other formats. To solve thisissue, phpDocumentor also parses out all allowed HTML (see http://phpdocu.sourceforge.net Tutorial for moredetailed information) into abstract structures:

<b> -- emphasize/bold text <br> -- hard line break, may be ignored by some converters <code> -- Use this to surround php code, some converters will highlight it <i> -- italicize/mark as important <li> -- list item <ol> -- ordered list <p> -- If used to enclose all paragraphs, otherwise it will be considered text <pre> -- Preserve line breaks and spacing, and assume all tags are text (like XML's CDATA) <ul> -- unordered list

is mapped to classes:

parserB parserBr parserCode parserI parserList - both types of lists are represented by this object, and each <li> is represented by an array item parserPre

<p> is represented by partitioning text into an array, where each array item is a new paragraph. (as inparserDocBlock::$processed_desc)

With these simple structures and a few methods to handle them, the process of writing a new converter isstraightforward.

Page 93 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 141: PhpDocumentor 1.2.2 Manual

Separation of data from display formatting

phpDocumentor has been designed to keep as much formatting out of the source code as possible. For manyconverters, there need be no new code written to support the conversion, as all output-specific information can beplaced in template files. However, the complexity of generating class trees does require the insertion of some codeinto the source, so at the bare minimum, the getRootTree() method must be overridden.

Methods that must be overridden

Creating a new converter can be challenging, but should not be too complicated. You need to override one datastructure, Converter::$leftindex, to tell the Converter which of the individual element indexes your Converter willuse. You will also need to override a few methods for the Converter to work. The most important relate to linkingand output.

A Converter must override these core methods:

Convert() - take any descendant of parserElement or a parserPackagePage and convert it into output returnSee() - takes a abstract link and returns a string that links to an element's documentation returnLink() - takes a URL and text to display and returns an internet-enabled link Output() - generate output, or perform other cleanup activities Convert_RIC() - Converts README/INSTALL/CHANGELOG file contents for inclusion in documentation ConvertErrorLog() - formats errors and warnings from $phpDocumentor_errors. seeHTMLframesConverter::ConvertErrorLog() getFunctionLink() - for all of the functions below, see HTMLframesConverter::getFunctionLink() for an example getClassLink() getDefineLink() getGlobalLink() getMethodLink() getVarLink()

A Converter may optionally implement these abstract methods:

endPage() - do any post-processing of procedural page elements, possibly output documentation for the page endClass() - do any post-processing of class elements, possibly output documentation for the class formatIndex() - format the $elements array into an index see HTMLframesConverter::generateElementIndex() formatPkgIndex() - format the $pkg_elements array into an index seeHTMLframesConverter::generatePkgElementIndex() formatLeftIndex() - format the $elements array into an index see HTMLframesConverter::formatLeftIndex()

Page 94 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 142: PhpDocumentor 1.2.2 Manual

formatTutorialTOC() - format the output of a {@toc} tag, see HTMLframesConverter::formatTutorialTOC() getRootTree() - generates an output-specific tree of class inheritance SmartyInit() - initialize a Smarty template object writeSource() - write out highlighted source code for a parsed file writeExample() - write out highlighted source code for an example unmangle() - do any post-processing of class elements, possibly output documentation for the class

The following methods may need to be overridden for proper functionality, and are for advanced situations.

checkState() - used by the parserStringWithInlineTags::Convert() cache to determine whether a cache hit ormiss occurs getState() - used by the parserStringWithInlineTags::Convert() cache to save state for the next Convert() call type_adjust() - used to enclose type names in proper tags as in XMLDocBookConverter::type_adjust() postProcess() - called on all converted text, so that any illegal characters may be escaped. The HTMLConverters, for example, pass all output through http://www.php.net/htmlentities getTutorialId() - called by the {@id} inline tag to get the Converter's way of representing a document anchor

Converter methods an extended converter should use

getSortedClassTreeFromClass() -- generating class trees by package hasTutorial() -- use this to retrieve a tutorial, or determine if it exists getTutorialTree() -- use this to retrieve a hierarchical tree of tutorials that can be used to generate a table ofcontents for all tutorials vardump_tree() -- use this to assist in debugging large tree structures of tutorials

Page 95 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 143: PhpDocumentor 1.2.2 Manual

Converter Default Template Variables

Basic Template Variables Available for Use by a New Converter

Introduction to Converter Template Variables

As of phpDocumentor version 1.2.0rc1, all Converters share certain template variables in common. This is madepossible by the common use of the Smarty template engine. Smarty makes it possible to truly separate data fromits display, allowing ultimate control of the display through the templates.

Smarty

What is Smarty? This is a versatile compiling template engine, and has its home page at http://smarty.php.net,please read the manual and the tutorials if you are unfamiliar with Smarty. This tutorial only describes how to usethe templates, and will be confusing if you have never used Smarty before. In particular, you must understand fullyhow to use the {section} and {foreach} tags. Please readhttp://smarty.php.net/manual/en/language.function.section.php andhttp://smarty.php.net/manual/en/language.function.foreach.php

All template files have available to them these smarty variables: {$date} string - the current date and time, as formatted by http://www.php.net/date("r",http://www.php.net/time) {$maintitle} string - the contents of the http://phpdocu.sourceforge.net Tutorial command-line switch {$package} string - the package of the current template item {$subpackage} string - the subpackage of the current template item {$phpdocversion} string - the version number of phpDocumentor {$phpdocwebsite} string - the official phpDocumentor website (http://www.phpdoc.org)

Common Source Code Element Template Variables

Source code elements are described in Documentable PHP Elements. For most converters, documentedelements are split up into two categories: class and procedural page. The template variables that contain thisinformation are also grouped in this manner.

The source code elements (function, include, global variable, define, class, class variable, method) all have a fewtemplate variables in common. They are: {$sdesc} string - Summary from the DocBlock {$desc} string - Long description from the DocBlock {$tags} array - Tags found in the DocBlock, array('keyword' => tagname, 'data' => description). access in thismanner: {section name=sec loop=$tags}{$tags[sec].keyword} = {$tags[sec].data}{/section}

Page 96 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 144: PhpDocumentor 1.2.2 Manual

or {foreach from=$tags item=tag}{$tag.keyword} = {$tag.data}{/foreach}

{$api_tags} array - Tags found in the DocBlock useful in documenting the API, array('keyword' => tagname,'data' => description). Access in the same manner as {$tags} {$info_tags} array - Tags found in the DocBlock that are purely informational in nature, offering no particular use indocumenting the actual software API, array('keyword' => tagname, 'data' => description). Access in thesame manner as {$tags} {$utags} array - Unknown tags found in the DocBlock, array('keyword' => tagname, 'data' => description). Access in the same manner as {$tags} {$line_number} integer - The line number in the source code that this element appears {$id} string - EXCEPT for include, all elements have a unique ID. This should be used to create a documentanchor that will allow hyperlinking to that element's documentation.

Procedural Page Conversion

Procedural Page Converter variables

The Converter::ConvertPage() method sets up several important variables that are used by the other conversionmethods. These are: Converter::$page_data - the Smarty template that contains all procedural page contents Converter::$path - the full path to the procedural page Converter::$page - the converter-safe name of the procedural page, can be used to uniquely name output Converter::$curpage - the parserPage representation of the current procedural page

Procedural Page template variables

There are many template variables assigned to the procedural page template: {$name} string - the name of the file "file.php" {$source_location} string - the relative path of the file, needed for an include statement {$classes} array - an array of classes defined in the file, see Converter::getClassesOnPage() {$tutorial} string|false - a link to the tutorial associated with this page, or false if none {$sdesc} string - summary of the procedural page from the Page-level DocBlock {$desc} string - long description of the procedural page from the Page-level DocBlock {$tags} array - array of all tags, array('keyword' => tagname, 'data' => description) {$utags} array - array of all unknown tags, array('keyword' => tagname, 'data' => description). This variable isunused in the templates packaged with phpDocumentor, and should be accessed in exactly the same manner that

Page 97 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 145: PhpDocumentor 1.2.2 Manual

{$tags} is accessed. functions, includes, defines, globals array - these arrays contain all of the procedural elements defined in the file

Function template variables

The function and method template variables are nearly identical. The only template variable that functions use thatmethods do not is {$function_conflicts}, as methods cannot have conflicts. The function template variables are: {$function_name} string - simple name of the function {$params} array - Function parameters, array('var' => parameter name, 'datatype' => parameter type, 'data'=> parameter description). The last two items are pulled from a @var tag. {$function_return} string - data type that the function returns {$function_conflicts} array - array('conflicttype' => 'function', 'conflicts' => array(link to docs of conflictingfunction 1, ...)) {$function_call} string - pre-formatted function declaration, use as is {$ifunction_call} array - special unformatted function declaration, use to customize for special purposes. All of thetemplates distributed with phpDocumentor use this template variable. Writing template code for this variable iscomplex. It may be best to copy over code from existing templates and modify it as needed. The {$ifunction_call} template variable is formatted by parserFunction::getIntricateFunctionCall(), and thedocumentation for that method describes its format in detail.

All functions are appended to the {$functions} template variable of the procedural page that contains them. Inversion 2.0, there will be greater flexibility possible with locating template variables.

Global variable template variables

Global variables templates are pretty simple. They contain the standard element template variables plus: {$global_name} string - Name of the global variable {$global_type} string - Data type of the global variable {$global_value} string- Initial value of the global variable as parsed from the source, if any {$global_conflicts} array|false - array('conflicttype' => 'global variables', 'conflicts' => array(link to docs ofconflicting global variable 1, ...))

All global variables are appended to the {$globals} template variable of the procedural page that contains them. In version 2.0, there will be greater flexibility possible with locating template variables.

Define constants template variables

Define constant templates are also pretty simple. They contain the standard element template variables plus: {$define_name} string- Name of the constant {$define_value} string- Value of the constant as parsed from the source {$define_conflicts} array|false - array('conflicttype' => 'defines', 'conflicts' => array(link to docs of conflicting

Page 98 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 146: PhpDocumentor 1.2.2 Manual

define 1, ...))

All define constants are appended to the {$defines} template variable of the procedural page that contains them. In version 2.0, there will be greater flexibility possible with locating template variables.

Include statements template variables

Include statement templates are the simplest of all. They contain the standard element template variables plus: {$include_name} string - the kind of include (include/require/include_once/require_once) {$include_value} string - The file included. If the file is parsed, a link to its documentation will be passed instead ofjust the name of the file.

All include statements are appended to the {$includes} template variable of the procedural page that containsthem. In version 2.0, there will be greater flexibility possible with locating template variables.

Class Conversion

Class Converter Variables

Like ConvertPage(), the Converter::ConvertClass() method sets up a few important variables that are used by theother conversion methods. These are: Converter::$class_data - the Smarty template that contains all class contents for this class Converter::$class - the name of the current class

Class Template Variables

There are many template variables assigned to the procedural page template aside from the standard elementtemplate variables: {$class_name} string - the name of the class {$package} string - the package of the class {$source_location} string - the include path to the file that contains this class {$children} array - array(array('link' => link to class that extends this class, 'sdesc' => summary of child class),...) {$class_tree} string - fully-formatted class tree (Converter-specific). Use unmodified. {$conflict} array - array('conflicttype' => 'classes', 'conflicts' => array(link to docs of conflicting class 1, ...)) {$ivars} array - complex array of all inherited variables, see Converter::getFormattedInheritedVars() {$imethods} array - complex array of all inherited variables, see Converter::getFormattedInheritedMethods() vars, methods array - these template variables will contain each of the class variables and method templatevariables.

Page 99 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 147: PhpDocumentor 1.2.2 Manual

Class variable template variables

The Class variable template variables are: {$var_name} string - simple name of the class variable {$var_default} string - Default value of the class variable, if any {$var_type} string - data type of the variable, from the @var tag. {$var_overrides} array - array('link' => link to documentation for overridden class variable, 'sdesc' =>summary of overridden class variable) The {$ifunction_call} template variable is formatted by parserFunction::getIntricateFunctionCall(), and thedocumentation for that method describes its format in detail.

All class variables are appended to the {$vars} template variable of the class that contains them. In version 2.0,there will be greater flexibility possible with locating template variables.

Function template variables

The function and method template variables are nearly identical. See Function template variables for details. Thetemplate variables that methods use and functions do not use are: {$constructor} boolean - true/false, true if the method is a constructor {$descmethod} array - array(array('link'=>link to documentation for overriding method, 'sdesc'=> summary ofthe overriding method),...) {$method_overrides} array - array('link'=>link to documentation for overridden method, 'sdesc'=> summary ofthe overridden method)

All methods are appended to the {$methods} template variable of the class that contains them. In version 2.0,there will be greater flexibility possible with locating template variables.

Tutorial template variables

{$contents} string - Converted contents of the tutorial {$title} string - Title of the tutorial {$nav} string - true/false, Whether any navigation links to other tutorials exist {$up} string - link to the parent tutorial of this tutorial {$uptitle} string - title of the parent tutorial {$prev} string - link to the previous tutorial in the tutorial hierarchy {$prevtitle} string - title of the previous tutorial {$next} string - link to the next tutorial in the tutorial hierarchy {$nexttitle} string - title of the next tutorial

Page 100 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 148: PhpDocumentor 1.2.2 Manual

Writing a Converter, Methods

Learn what methods need to be defined in a new Converter

Introduction to Converter Methods

This Tutorial describes the methods that a New Converter must use to become fully functional. A great deal offunctionality is handled by the parent Converter class, and a child converter's only job is to convert sorted datafrom abstract classes into full-fledged output.

There are literally no restrictions on how a converter does its job. If the predefined Converter::walk() method doesnot do anything a converter needs to do, all one needs to do is override walk() and perform any necessaryprocessing directly on the parsed elements. Be forewarned that this is a bit like trying to fix a problem in a programby tinkering with the operating system, and we cannot be even in the slightest responsible for any suffering youmight incur.

Having said that nasty disclaimer, let's begin with the good news. The only thing a standard converter needs toknow is that it must define a few methods. The only crucial methods to define are Convert(), returnSee(), andreturnLink().

The Convert() method expects it will be passed all parsed data. Data will be passed either by file or by package,but in either case, all data will pass through Convert(), and so must be handled by it. Good programming practicesuggests having one method for every parsed element, and that is what the bundled Converters do.

returnSee() is the core of phpDocumentor's advanced linking @see, @tutorial, inline {@tutorial} and inline{@link}. returnLink() handles hyperlinks to URLs on the internet.

Beyond these three essential methods, there are a slew of methods that assist phpDocumentor in creating itsadvanced source highlighting feature, in creating an error log and todo list, and a few advanced functions thatspeed up conversion through a cache. Beyond this, there are many helper functions that assist in the creation ofindexes, class trees, inheritance and conflict information, and so on. phpDocumentor does not restrict their use, toallow for future possibilities.

For most cases, it is best to start writing a new converter by copying the code from one of the existing converters,and then begin modifying methods to generate the appropriate output. In addition, this will leverage the existinguse of the Smarty template engine to separate specifics of output formatting from the data source. In theory, onecould create a single converter and use many templates for creating different output, but this is often not possiblebecause templates are still organized into files, and this is invariant. In the future of phpDocumentor, we may havea base converter from which all other converters can extend, greatly simplifying development. For now,development is still relatively easy, after the basic concepts behind phpDocumentor are grasped.

Converter core methods that must be overridden

Convert()

Page 101 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 149: PhpDocumentor 1.2.2 Manual

The Converter::Convert() method is called by Converter::walk() to process all Converter classes:

parserData - representation of a file parserInclude - representation of include statements parserDefine - representation of define statements parserFunction - representation of functions parserGlobal - representation of global variables parserClass - representation of a class parserVar - representation of class variables parserMethod - representation of class methods parserPage - representation of old Package Pages (deprecated) parserTutorial - representation of tutorials (like what you are reading now)

It is up to this method to distribute processing of these elements, or do any post-processing that is necessary. All of the converters included with phpDocumentor process elements by passing them to individual Convert*()methods like HTMLframesConverter::ConvertClass(), and one can simply copy this style, or write a completely newmethod.

Data is passed to the Converter organized by file, procedural elements first followed by class elements, unlessConverter::$sort_absolutely_everything is set to true. Then data is passed organized by package, with all files andprocedural elements first, followed by all class elements. The PDFdefaultConverter set$sort_absolutely_everything = true, and HTML converters set $sort_absolutely_everything = false

returnSee()

This method takes a abstractLink class descendant and converts it to an output-format compatible link to anelement's documentation. HTML converters convert the link to an <a href=""> tag, the XML converterchanges it to a <link linkend=""> tag, etc. This function is also responsible for distinguishing between sectionsof documentation. All information needed to distinguish between elements is included in the data members of alink class, it is up to the returnSee() method to translate that into a unique string identifier. A good strategy is towrite a function that takes a link class and returns a unique identifier as in XMLDocBookConverter::getId(), andthen reference this function to grab identification strings for defining anchors in the generated output.

returnLink()

This method takes a URL and converts it to an external link to that URL in the appropriate output format. In HTML,the link will be a standard <a href= tag.

Output()

This method is called at the end of the walk() method. It may be used to generate output or do any necessarycleanup. Nothing is required of Output, and it may do nothing as it does in the HTML converters, which writeoutput continuously as converting, or perform special operations as in CHMdefaultConverter::Output().

Convert_RIC()

Page 102 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 150: PhpDocumentor 1.2.2 Manual

This method is called to format the contents of README, INSTALL, CHANGELOG, NEWS, and FAQ files grabbedfrom the base parse directory. This function allows standard distribution files to be embedded in generateddocumentation. A Converter should format these files in a monospace font, if possible.

ConvertErrorLog()

This method is called at the end of parsing to convert the error log into output for viewing later by the developer. Error output is very useful for finding mistakes in documentation comments. A simple solution is to copy theHTMLframesConverter::ConvertErrorLog() function and the errors.tpl template file to the new converter. The errorlog should not be embedded in generated output, as no end-user wants to see that information.

getFunctionLink()

This function should call Converter::getFunctionlink(), and then use returnSee() to return a string containing aconverter-specific link. Code can literally be copied from any of the converters. This function is called by theparserFunction::getLink() method.

getClassLink()

This function should call Converter::getClasslink(), and then use returnSee() to return a string containing aconverter-specific link. Code can literally be copied from any of the converters. This function is called by theparserClass::getLink() method.

getDefineLink()

This function should call Converter::getDefinelink(), and then use returnSee() to return a string containing aconverter-specific link. Code can literally be copied from any of the converters. This function is called by theparserDefine::getLink() method.

getGlobalLink()

This function should call Converter::getGloballink(), and then use returnSee() to return a string containing aconverter-specific link. Code can literally be copied from any of the converters. This function is called by theparserGlobal::getLink() method.

getMethodLink()

This function should call Converter::getMethodlink(), and then use returnSee() to return a string containing aconverter-specific link. Code can literally be copied from any of the converters. This function is called by theparserMethod::getLink() method.

getVarLink()

This function should call Converter::getVarlink(), and then use returnSee() to return a string containing a converter-specific link. Code can literally be copied from any of the converters. This function is called by theparserVar::getLink() method.

Abstract Methods that must be overridden

endPage()

Page 103 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 151: PhpDocumentor 1.2.2 Manual

This method is called by the Converter::walk() method when all procedural and class elements on a page havebeen processed. The purpose is to allow the converter to reset any state variables that apply to the page. endPage() is not called by Converter::walk_everything() and so if your converter setsConverter::$sort_absolutely_everything = true, you will not need to implement this method.

endClass()

This method is called by the Converter::walk() method when all class elements (methods, variables) in a classhave been processed. The purpose is to allow the converter to reset any state variables that apply to the page. endPage() is not called by Converter::walk_everything() and so if your converter setsConverter::$sort_absolutely_everything = true, you will not need to implement this method.

formatIndex()

This method is called before processing any elements, and is not required to do anything. The intent is to allowprocessing of a global element index to occur in a separate method, which logically separates activities performedby the Converter. See the HTMLframesConverter::formatIndex() method for details on one possible implementation

formatPkgIndex()

Like formatIndex(), this method is called before processing any elements, and is not required to do anything. Theintent is to allow processing of a package-level index to occur in a separate method, which logically separatesactivities performed by the Converter. See the HTMLframesConverter::formatPkgIndex() method for details on onepossible implementation

formatLeftIndex()

Like formatIndex(), this oddly-named method is called before processing any elements, and is not required to doanything. The name comes from the original JavaDoc design of putting an index in the lower left frame of output. The indexes needed by this function are automatically generated based on the value of Converter::$leftindex. These indexes are arrays of links organized by package and subpackage. Left indexes can be generated for files(procedural pages), functions, classes, constants (define statements), and global variables.

formatTutorialTOC()

This method is used to format the automatically generated table of contents from an inline {@toc} in a tutorial. Thedata structure passed is an array generated by parserTocInlineTag::Convert() that contains each entry. All thatformatTutorialTOC needs to do is structure the inherent hierarchy of the original DocBook tutorial source accordingto the requirements of the output format. This is remarkably simple, and can often be implemented simply bypassing the entire array to a template engine, as HTMLframesConverter::formatTutorialTOC() does.

getRootTree()

This is a very fast non-recursive method that generates a string containing class trees. In earlier phpDocumentorversions, the getRootTree() method was recursive, and both consumed too much memory and was very slow. Itwas also easier to understand. The data structure processed in the current version of phpDocumentor stillcontains the same information, but requires a precise algorithm to process. The good news is that we have workedout this algorithm for you, and to implement this method in a new converter, you need only copy the code from oneof the existing converters. See Converter::getRootTree() for low-level details.

SmartyInit()

The primary template engine for phpDocumentor is the http://smarty.php.net template engine. This utility functionis used to initialize a new Smarty template object with pre-initialized variables. The Converter::newSmarty

Page 104 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 152: PhpDocumentor 1.2.2 Manual

initializes several variables, see Converter::newSmarty() for details. If your converter needs to have variablesavailable to every template, extend this function, and use Smarty::assign() to assign values to variables. Note thatthe function must use code that returns a reference like:

function &SmartyInit(&$templ) { $somevalue = "whatever you want, babe"; $templ->assign("variable",$somevalue); return $templ; }

writeSource()

writeExample()

unmangle()

This function is used by the pre-PHP 4.2.3 inline {@source} tag's parserInlineSourceTag::Convert() method toprocess output from http://www.php.net/highlight_string. In non-HTML converters, it should return an empty string. For advanced source highlighting, implement highlightSource(), highlightDocBlockSource().

Methods that may optionally be overridden

checkState()

getState()

type_adjust()

This method is passed type names from @param/@return/@var tags and can be used to enclose types in specialformatting. The only converter that really uses this capability is the DocBook converter. Since the type name canbe a link class, it is possible to determine what kind of element the type is, a constant, class, or anything that canbe documented. For example, the DocBook converter encloses classes in <classname> tags, constants in<constant> tags, variables in <varname> tags, and also will enclose functions in <function> tags.

postProcess()

This method takes a string and should "escape" any illegal characters. For instance, in HTML, all "<" charactersmust be escaped to "<" entities. This is to prevent documentation comments from being interpreted as textmodifiers in the output format.

Page 105 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 153: PhpDocumentor 1.2.2 Manual

getTutorialId()

This method is used to pass back a valid ID for a tutorial section. In HTML, most of the id is coded in the filecontaining the data, and only the section and subsection need to be used to differentiate sections. In DocBook, theid is packages.categoryname.packagename.subpackagename.class/filename.section.subsection, a much moreinvolved scenario.

Utility methods

getSortedClassTreeFromClass()

This method is used by getRootTree() to create class trees for a package. Also see the docs inConverter::getSortedClassTreeFromClass()

hasTutorial()

This helper method is used to determine whether a particular tutorial has been parsed, and can be used to performassociation between parsed elements and their tutorials

getTutorialTree()

This helper method returns a recursive data structure containing all tutorials in the table-of-contents style hierarchythat they should have in final output. This is used to create a table of contents for tutorials in the left frame of theHTML Converters, and in the PDF Converter, to determine indentation level in the top-level table of contents.

vardump_tree()

This function is a utility function. It performs what looks like a http://www.php.net/var_dump of any recursive datastructure, but if it encounters an object, it only prints out its class and name if the $name data member exists. Thisallows checking of the tree structure without having to wade through pages of class information, and was veryuseful for debugging, so we added it for your use.

Page 106 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 154: PhpDocumentor 1.2.2 Manual

Converter Manual

Learn how to use and extend a Converter

http://phpdocu.sourceforge.net Converters Documentation

Detailed Documentation of the tag specification is available at phpDocumentor tags. Detailed information onphpDocumentor and a tutorial on basic usage is at: http://phpdocu.sourceforge.net Tutorial

If you are wondering how to extend the capabilities of phpDocumentor's output, this is the documentation youneed. This documentation does not discuss how to document your code or project, and only deals with the specificrequirements of extending phpDocumentor.

Internals: how phpDocumentor takes source code and generatesdocumentation

phpDocumentor is divided into three logical components: Parser, IntermediateParser and Converter. These threedivisions communicate through special method interfaces.

Parser internals

The Parser component does the work of reading the actual files, both source code and tutorial/manual files. For adetailed discussion of how to write a tutorial, see phpDocumentor Tutorials, or read the source files forphpDocumentor's manual in the tutorials/ subdirectory. The Parser encapsulates input into abstract classes, all ofwhich are defined in seven files:

DescHTML.inc DocBlockTags.inc InlineTags.inc ParserData.inc ParserElements.inc ParserDocBlock.inc PackagePageElements.inc

The abstract classes are then passed to the Intermediate Parser.

The IntermediateParser class organizes and processes abstract data passed in with the assistance of theProceduralPages and Classes classes. All data is sorted alphabetically and then passed to the convertersspecified on the command-line one by one. Traditionally, the next step would be to generate output by passing theabstract data to a template engine. phpDocumentor has one more layer of separation to accomodate differentoutput formats called "Converters."

Page 107 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 155: PhpDocumentor 1.2.2 Manual

What is a Converter? To understand this, one must first understand the problem that Converters solve. Documentation is not always best viewed as a web page. Sometimes a user may want to print it out, or view it inXML with an interface program that can search or perform other advanced functions. Printing html does not workvery well, and may look very different on different user's screens. To solve this problem, we need an interfacebetween the parser and the template engine, hence the Converter.

On an even more basic level, the linking performed by phpDocumentor requires that the program pass over thedata at least twice to set up relationships and create the @see, @tutorial, {@tutorial} and {@link} hyperlinks thatmake it such an effective tool. In earlier versions of phpDocumentor, the parser passed over the data twice, withsignificant redundancy and slow parsing times. In addition, the linking pass had to be first, and the order of parsingwas important. In other words, if file A contains class B extends foo, and file B contains class foo, if file A is parsedbefore file B, no inheritance occurs between the classes (you can try this with phpDocumentor 0.4.2a and earlier, itbreaks the parser). The Converter works with temporary data structures (all defined in ParserData.inc,ParserElements.inc, and ParserDocBlock.inc if you want a peek), and allows the linking pass to occur in-memoryafter parsing, with a significant speedup (almost twice as fast as earlier versions).

Adding a template

In most cases, it is possible to leverage the existing code to create spectacular output simply by writing a new setof templates for one of the existing Converters. To learn how to write templates for each specific converter, choosefrom the list below:

Writing templates for the HTMLframes Converter Writing templates for the HTMLSmarty Converter Writing templates for the PDFdefault Converter Writing templates for the XMLDocBook Converter Writing templates for the CHMdefault Converter

Extending an existing Converter by writing your own Converter Class

If the existing converters work except for a small detail that could be fixed by adding a small patch to the sourcecode of an output converter, then you need to extend a Converter. There are several straightforward rules thatallow you to easily extend a Converter.

Rules for extending a Converter

First, the extended converter must be defined by a single word that would work as a valid filename. For anexample, if the Converter extends the HTMLframesConverter, and provides search functionality in the generateddocumentation through the insertion of special php code into the generated files, it might be named "Search."

Once a name has been chosen, a subdirectory of the parent converter (HTMLframesConverter is inphpDocumentor/Converters/HTML/frames/) must be created with the same name as the child converter. So, forour "Search" Converter, the directory phpDocumentor/Converters/HTML/frames/Search/ must be created. Putyour new Converter in a file called "HTMLframes SearchConverter.inc". Note the insertion of our newConverter's name before the word "Converter" in the filename.

Page 108 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 156: PhpDocumentor 1.2.2 Manual

Next, create a class declaration in the new HTMLframesSearchConverter.inc file as below:

1 /**2 * HTML output converter.3 *4 * This Converter takes output from the {@link Parser} and converts it to HTML-ready output for usewith {@link Smarty}.5 * Add any extra documentation about the search capabilities here6 * @package Converters7 * @subpackage HTMLframes8 * @author Your Name <[email protected]>9 */10 class HTMLframesSearchConverter extends Converter11 {12 /**13 * frames/Search Converter wants elements sorted by type as well as alphabetically14 * @see Converter::$sort_page_contents_by_type15 * @var boolean 16 */17 var $sort_page_contents_by_type = true;18 /** @var string */19 var $outputformat = 'HTML';20 /** @var string */21 var $name = 'frames/Search';

Note the var $name is set to the relative subdirectory. This is very important. Do not set the name to be"framesSearch", as the Converter::setTemplateDir() method uses this variable to set the template directory.

If the existing templates work fine, and there is some other change needed, set the name to be the same as theparent, and phpDocumentor will use the parent templates.

After extending the methods the new Search Converter will need, place the templates in a subdirectory namedtemplates/ (as in phpDocumentor/Converters/HTML/frames/Search/templates/), just as they are used in theconverters that come with phpDocumentor.

Using an extended Converter with phpDocumentor

After all this complexity of setting up the Converter, using it is straightforward. simply pass -oHTML:frames/Search:templatename to phpDocumentor's web interface or commandline!

Writing a Converter for a new output format

This topic is very large, and a separate manual entry is devoted entirely to this subject, Writing a New Converter

Page 109 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 157: PhpDocumentor 1.2.2 Manual

Writing templates for the CHMdefaultConverter

Learn which template variables are available for use in an CHM:default template

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected]

CHM:default:* Introduction

This documentation deals only with adding a new template to the CHMdefault Converter. To learn how to usephpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn how to write anew Converter, read Converter Manual

Page 110 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 158: PhpDocumentor 1.2.2 Manual

Writing templates for the HTMLframesConverter

Learn which template variables are available for use in an HTML:frames template

HTML:frames:* Introduction

This documentation deals only with adding a new template to the HTMLframes Converter. To learn how to usephpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn how to write anew Converter, read Converter Manual

Overview

The HTML:frames converter uses all of the values from the generic Converter (see Converter Default TemplateVariables), and adds a few more.

All templates have the standard smarty template variables available to them, as well as these: {$subdir } string - the combination of "../" that will lead to the base output directory, used for linking to othergenerated documentation. {$packageindex} array - a list of all the packages and their index pages in the format array('link' => link to theindex page, 'title' => package name)

Template Variables

Source Code formatting - filesource.tpl

When source code is generated via the @filesource tag, the output is passed into these templates variables:{$source} string - the fully formatted source code, use as is {$package} string - the package name of the source file {$subpackage} string - the subpackage name of the source file {$name} string - the name of the source file file.ext {$source_loc} string - the relative path to the file, used for include() statements {$docs} string - a link to the documentation for this file

Example Code formatting - examplesource.tpl

When an example file is specified via the @example tag, the output is passed into these templates variables:{$source} string - the fully formatted source code, use as is

Page 111 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 159: PhpDocumentor 1.2.2 Manual

{$file} string - the full path to the file {$title} string - the title of this example, from the @example tag

Left Frame formatting - left_frame.tpl

The HTML:frames Converter places a table of contents in the left frame. This table of contents contains links toclass trees, alphabetical indexes, tutorials, and elements organized by category (class/procedural code).

Template variables passed to left_frame.tpl

Each left_frame.tpl consists of one package's documentation. Basic template variables passed to left_frame.tplinclude:{$info} array - the table of contents, see The {$info} template variable for contents {$package} string - package this table of contents documents {$hastutorials} boolean - true if this package has external tutorials (see phpDocumentor Tutorials) {$hastodos} boolean - true if there are any @todo tags in this package {$todolink} string - file.html name of the todo list. {$classtreepage} string - name of the file containing class trees, minus .html {$elementindex} string - name of the file containing the alphabetical index for this package, minus .html {$packagedoc} string|false - link to package-level documentation, or false if there is none

The {$info} template variable

The {$info} variable is an array of arrays, each indexed by subpackage. Even packages with no explicit@subpackage tags have a subpackage named '' (empty string). Elements in the main package can be detectedusing the smarty code:

{section name=p loop=$info}{if $info[p].subpackage == ''}...

The {$info} variable contains these sub-variables (assuming that {section name=p loop=$info} was used): {$info[p].package} string - package name {$info[p].subpackage} string - subpackage name {$info[p].packagedoc} string - link to old format .html-based package-level documentation (deprecated) {$info[p].packagetutorial} string - link to new package-level documentation, or subpackage-level documentation forsubpackages {$info[p].packagetutorialnoa} string - link to new package-level documentation, or subpackage-level documentation

Page 112 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 160: PhpDocumentor 1.2.2 Manual

for subpackages, without enclosing <a href="link to docs"> HTML tag. Use this to do special link handling(opening a new window, opening in the _right frame, etc.) {$info[p].packagetutorialtitle} string - title of package-level documentation {$info[p].files}/{$info[p].classes}/{$info[p].functions} array - links to documentation array('link' => html link, 'title'=> name of element) {$info[p].tutorials} string - Formatted tutorial table of contents, see Tutorial table of contents formatting -tutorial_tree.tpl

Tutorial table of contents formatting - tutorial_tree.tpl

The tutorial table of contents is formatted using the recursive tutorial_tree.tpl template. This template has only afew variables: {$name} string - abstract name of the tutorial (tutorial.pkg becomes tutorialpkg) {$parent} string|false - {$name} from parent tutorial, or false if no parent tutorial {$main.title} string - the title of the tutorial. Use as {main.title|striptags} {$main.link} string - link to the tutorial's documentation {$haskids} boolean - true if this tutorial has sub-tutorials {$kids} string - fully formatted list of child tutorials {$subtree} boolean - true if this is a sub-tutorial tree. Use to modify formatting for sub-tutorial listings.

The tutorial_tree.tpl file should represent the hierarchy of tutorials through some form of a nested html tag, suchas a nested list (like the default converter), or a nested DHTML menu (like the phpedit or earthli templates).

Class trees - classtrees.tpl

Class trees are a visual representation of Class inheritance to help facilitate understanding of how a project isorganized. Class trees have only a few template variables: {$package} string - the package that base classes are found in {$classtrees} array - a pre-formatted list of class trees, organized by base class. Format is: array('class' =>name of class, 'classtree' => fully formatted class tree)

Package index - top_frame.tpl

The top frame is used to display links to the highest level of documentation, the package table of contents, and theproject-wide README/CHANGELOG/FAQ/NEWS/INSTALL files. {$packages} array - A listing of all packages documented, in format array('link' => name of the left_frame.tpl-generated package table of contents, 'title' => name of the package) {$ric} array - all of the README/INSTALL/FAQ/NEWS/CHANGELOG files found, in format array('file' => nameof the generated output, 'name' => displayable name of the parsed file)

Alphabetical Indexes - elementindex.tpl/pkgelementindex.tpl

Page 113 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 161: PhpDocumentor 1.2.2 Manual

phpDocumentor's generated alphabetical element indexes are organized into an index of all elements in allpackages (elementindex.tpl), and indexes of the elements in each individual package (pkgelementindex.tpl). Theirvariables are the same, except for the addition of the {$package} variable in pkgelementindex.tpl. Here are thetemplate variables:{$index} array - the index items, see {$index} contents {$letters} array - a listing of each letter heading that should be used in the index

{$index} contents

The {$index} variable is an array of index listings organized by their first letter. All documented elements whosename begins with the letter A will be grouped into the sub-array 'a' => array(listing,listing,...). The listing isorganized as follows:{$index[xxx].name} string - name of the documented element {$index[xxx].title} string - One of Variable, Global, Method, Function, Constant, Page, Include {$index[xxx].link} string - hyperlink to the element's documentation, or the file included for include statements {$index[xxx].listing} string - A fully-formatted index listing in English.

Miscellaneous Templates - ric.tpl/todolist.tpl/errors.tpl

These specialized templates will only be used in certain cases. ric.tpl - This template is only used when files such as README, INSTALL, or CHANGELOG are detected in thebase parse directory. todolist.tpl - This template is only used when a @todo tag is used in documentation errors.tpl - This template is always generated, but only contains content when there are parsing syntax errors orlogical conflicts in the parsed documentation

ric.tpl - README/INSTALL/CHANGELOG display

This is a very simple template.{$name} string - name of the file (README, for example) {$contents} string - contents of the file, ready for display (no modification needed)

todolist.tpl - listings of @todo tags

This is also a very simple template, and requires only a {section} tag to process the input.{$todos} array - Format: array(packagename => array('link' => string element containing @todo tag, 'todos'=> array(todo item 1, todo item 2,...)),...)

errors.tpl - phpDocumentor parsing/conversion warnings and errors

Page 114 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 162: PhpDocumentor 1.2.2 Manual

This file is a tool used to help find mistakes in your own documentation, and greatly simplifies determining whetherthere is a bug in your documentation or in phpDocumentor itself.

The structure of the errors array passed to errors.tpl is somewhat complex to learn, but easy to use oncelearned. Every error or warning is grouped by the file that triggered it. In the case of post-parsing errors, they aregrouped into the pseudo-file "Post-parsing". Within each file, warnings are grouped separately from errors. Hence,the structure looks something like:

1 array('Post-parsing' => array( 'warnings' => array(2 array('name' => name of warning,3 'listing' => description of warning),...4 )5 'errors' => array(6 array('name' => name of error,7 'listing' => description of error),...8 )9 ),10 'file1.php' => array( same structure as 'Post-parsing'),...11 );

{$all} array - This is the structure listed above {$files} array - a listing of all the files, useful for making a table of contents {$title} string - this is hard-coded in English. Override by simple using {assign var="title" value="whatever youwant"} before including header.tpl

PHP element templates - differences from Standard Converter

For the basic PHP elements, define, include, function, global variable, class, and so on (see Documentable PHPElements), there are very few differences between the templates packaged with the HTMLframesConverter andthe basic Converter.

Class variables - var.tpl

The only additional variable is: {$var_dest} string - html anchor used to pinpoint this class variable's documentation in the class file'sdocumentation. Use as in:

<a name="#{$var_dest}"></a>

Class methods - method.tpl

The only additional variable is: {$method_dest} string - html anchor used to pinpoint this class method's documentation in the class file'sdocumentation. Use as in:

<a name="#{$method_dest}"></a>

Page 115 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 163: PhpDocumentor 1.2.2 Manual

Functions - function.tpl

The only additional variable is: {$function_dest} string - html anchor used to pinpoint this function's documentation in the procedural file'sdocumentation. Use as in:

<a name="#{$function_dest}"></a>

Defines - define.tpl

The only additional variable is: {$define_link} string - html anchor used to pinpoint this define statement's documentation in the procedural file'sdocumentation. Use as in:

<a name="#{$define_link}"></a>

Global Variables - global.tpl

The only additional variable is: {$global_link} string - html anchor used to pinpoint this global variable's documentation in the procedural file'sdocumentation. Use as in:

<a name="#{$global_link}"></a>

Include Statements - include.tpl

The only additional variable is: {$include_file} string - html anchor used to pinpoint this include statement's documentation in the procedural file'sdocumentation. Use as in:

<a name="#{$include_file}"></a>

Page 116 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 164: PhpDocumentor 1.2.2 Manual

Writing templates for the HTMLSmartyConverter

Learn which template variables are available for use in an HTML:Smarty template

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected]

HTML:Smarty:* Introduction

This documentation deals only with adding a new template to the HTMLSmarty Converter. To learn how to usephpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn how to write anew Converter, read Converter Manual

Page 117 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 165: PhpDocumentor 1.2.2 Manual

Writing templates for the PDFdefaultConverter

Learn which template variables are available for use in an HTML:frames template

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected]

PDF:default:* Introduction

This documentation deals only with adding a new template to the PDFdefault Converter. To learn how to usephpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn how to write anew Converter, read Converter Manual

Page 118 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 166: PhpDocumentor 1.2.2 Manual

Using the PDFParser XML templatinglanguage

Learn how the PDFParser XML templating language is constructed and used

PDFParser Introduction

This documentation deals only with the PDFParser XML templating language. To learn how to usephpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn how to write anew Converter, read Converter Manual

Overview

The PDF:default Converter uses the powerful Cezpdf class library written by Wayne Munro. Although the Cezpdflibrary is very versatile and useful, it is designed to be used as PHP code, and does not allow access to itsmethods from the text passed to it. The PDFParser class was written to solve this problem. Through the use of afew basic XML-based tags, and the versatile <pdffunction /> tag, one can access any feature of the Cezpdflibrary and do anything that it can do. This is what makes it possible to use Smarty templates without modifyingany code in phpDocumentor, a primary goal of the 1.2.0 release.

PDFParser XML tags

<text>

The <text> tag is a block tag (requires a closing tag). All output that is not a PDFParser tag must be enclosedin this tag. These are the parameters to the text tag: size (required) - font size any legal parameter to Cezpdf::ezText() (all optional): left - indentation from the left margin right - indentation from the right margin aleft - absolute indentation from the left side of the page aright - absolute indentation from the right side of the page justification - one of left, right, center/centre, full either leading or spacing

Examples might include: <text size="11">Hello World!</text> <text size="11" justification="right">Hello World!</text>

Page 119 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 167: PhpDocumentor 1.2.2 Manual

<text size="11" left="10" right="10" justification="center">Hello World!</text>

<font>

Unlike HTML, the <font /> tag is a self-enclosed tag, and is only used to select the font face (and futureversions will also select color). Syntax is <font face="fontface" /> The fontface must be present in the Converters/PDF/default/templates/fonts/ subdirectory as a fontface-php.afm and fontface.afm file, otherwiseCezpdf will cause all kinds of PHP warnings. This is an issue with Cezpdf that we are assisting the author in fixing,and will not be a problem in the future.

<newpage>

This is the simplest tag, use it as <newpage /> to tell Cezpdf to jump to the top of the next page in output.

<pdffunction>

The <pdffunction> tag is the most versatile of the PDFParser tags. This tag can be used to arbitrarily call anyCpdf or Cezpdf method. Arguments can be passed to the function both as literal values and using dynamicvariables, both class variables and temporary variables. The method chosen is selected as if pdffunction were anamespace rather than a

Here are the parameters to the pdffunction: return (optional) set a temporary variable to the value returned from the function. This parameter allows a laterreference to the temporary variable like: <pdffunction:getYPlusOffset return="newy" offset="0" /><pdffunction:addJpegFromFile arg="logo.jpg" x="250" y=$newy /> any other parameter represents an argument. Since the parameters passed are simply passed by value to themethod, the names can be anything that is useful to understanding how they work. <pdffunction:ezStartPageNumbers x="500" y="28" size="10" pos="" pattern="{ldelim}PAGENUM{rdelim} of{ldelim}TOTALPAGENUM{rdelim}" num="1" /> could just as easily be <pdffunction:ezStartPageNumbersarg="500" foo="28" bar="10" mylord="" goodnessgracious="{ldelim}PAGENUM{rdelim} of{ldelim}TOTALPAGENUM{rdelim}" num="1" /> and the code would still work splendidly. The first way isobviously easier to handle, and so is recommended.

Most arguments to the method will be literals, like numbers or strings, but some arguments may need to be moredynamic, based on the values returned from other pdffunction tags. To do this, use the return parameter asdescribed above, and reference the temporary variable as if it were a php variable like <pdffunction:whateverarg=$tempvar /> It may even be necessary to access a data member of the pdf class. In this case, use $this->datamember as in <pdffunction:whatever arg=$this->datamember />

Page 120 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 168: PhpDocumentor 1.2.2 Manual

Writing templates for the XMLDocBookConverter

Learn which template variables are available for use in an XML:DocBook template

Authors:Joshua Eichorn

mailto:[email protected] Gregory Beaver

mailto:[email protected]

XML:DocBook:* Introduction

This documentation deals only with adding a new template to the XMLDocBook Converter. To learn how to usephpDocumentor, read the phpDocumentor Guide to Creating Fantastic Documentation. To learn how to write anew Converter, read Converter Manual

Page 121 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 169: PhpDocumentor 1.2.2 Manual

Page 122 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 170: PhpDocumentor 1.2.2 Manual

Package phpDocumentor ProceduralElements

actions.php

Package phpDocumentor

include_once "$path/includes/utilities.php" [line 16]

Page 123 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 171: PhpDocumentor 1.2.2 Manual

builder.phpAdvanced Web Interface to phpDocumentor

Package phpDocumentor Filesource Source Code for this file See phpdoc.php

include "$root_dir/phpDocumentor/phpdoc.inc" [line 84]

phpdoc.inc

include_once "$root_dir/phpDocumentor/common.inc.php" [line 42]

common file information

Page 124 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 172: PhpDocumentor 1.2.2 Manual

config.phpAdvanced Web Interface to phpDocumentor

Package phpDocumentor Filesource Source Code for this file See phpdoc.php

include_once "$root_dir/docbuilder/includes/utilities.php" [line 43]

include_once "$root_dir/phpDocumentor/common.inc.php" [line 42]

common file information

Page 125 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 173: PhpDocumentor 1.2.2 Manual

utilities.php

Package phpDocumentor

function getDir($path, &$node) [line 51] function htmlArraySelect(&$arr, $select_name, $select_attribs, $selected) [line 40]

Function Parameters:

array $arr array of the key-text pairs string $select_name The name of the select box string $select_attribs Additional attributes to insert into the html select tag string $selected The key value of the selected eleme

Returns a select box based on an key,value array where selected is based on key

include_once dirname(realpath(__FILE__))."/../../HTML_TreeMenu-1.1.2/TreeMenu.php" [line 16]

function recurseDir($path, &$node) [line 73] function showImage($src, [$wid = ''], [$hgt = ''], [$alt = '']) [line 25]

Function Parameters:

string $src path to the source image int $wid width on the image [optional] int $hgt height on the image [optional] string $alt hover text for the image [optional]

Allows png's with alpha transparency to be displayed in IE 6

function switchDirTree($path, &$node) [line 102] function vdump_par($tree) [line 182]

Page 126 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 174: PhpDocumentor 1.2.2 Manual

top.phpAdvanced Web Interface to phpDocumentor

Package phpDocumentor Filesource Source Code for this file See phpdoc.php

include_once "$path/phpDocumentor/common.inc.php" [line 10]

Page 127 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 175: PhpDocumentor 1.2.2 Manual

phpdoc.phpWeb Interface to phpDocumentor

Package phpDocumentor Deprecated in favor of docbuilder (see docbuilder/config.php) Filesource Source Code for this file See new_phpdoc.php

include "phpDocumentor/phpdoc.inc" [line 169]

phpdoc.inc

include_once "phpDocumentor/common.inc.php" [line 48]

common file information

Page 128 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 176: PhpDocumentor 1.2.2 Manual

Classes.incIntermediate class parsing structure.

Package phpDocumentor Version $Id: Classes.inc,v 1.52.2.3 2003/08/13 20:01:51 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

Page 129 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 177: PhpDocumentor 1.2.2 Manual

common.inc.phpCommon variables/functions used by other files in phpDocumentor

Package phpDocumentor Filesource Source Code for this file

function debug($s) [line 178]Debugging output

function fancy_debug($s, $v, $v...) [line 189]Function Parameters:

string $s string to display mixed $v variable to display with var_dump() mixed $v... unlimited number of additional variables to display with var_dump()

Returns a formatted var_dump for debugging purposes.

PATH_DELIMITER = '/' [line 32] function phpDocumentor_ConfigFileList($directory) [line 36]

used in phpdoc.php and new_phpdoc.php

array function phpDocumentor_parse_ini_file($filename, [$process_sections = false]) [line 84]Function Parameters:

string $filename full path to the ini file boolean $process_sections add an associative index for each section [in brackets]

Parse an .ini file Works like http://www.php.net/parse_ini_file, except it will take a section like:

[MYVAR]

Page 130 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 178: PhpDocumentor 1.2.2 Manual

value1 value2 value3

and return an associative array(MYVAR => array(value1, value2, value3))

PHPDOCUMENTOR_VER = "1.2.2" [line 26]phpDocumentor version

PHPDOCUMENTOR_WEBSITE = "http://www.phpdoc.org" [line 28]phpDocumentor version

PHPDOCUMENTOR_WINDOWS = substr(PHP_OS,0,3)=='WIN' [line 33]SMART_PATH_DELIMITER = DIRECTORY_SEPARATOR [line 29]tokenizer_ext = extension_loaded('tokenizer')&&version_compare(phpversion(),"4.3.0",">=") [line 30]

Page 131 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 179: PhpDocumentor 1.2.2 Manual

EventStack.incAn event Stack

Package phpDocumentor Version $Id: EventStack.inc,v 1.8.2.1 2003/06/03 05:44:52 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]>

Page 132 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 180: PhpDocumentor 1.2.2 Manual

IntermediateParser.incThe phpDocumentor_IntermediateParser Class

The Intermediary Data Parser (intermediate between Parse and Converter)

Package phpDocumentor Copyright 2002 Gregory Beaver Version $Revision: 1.122.2.15 $ Author Gregory Beaver

Page 133 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 181: PhpDocumentor 1.2.2 Manual

Io.incClass to handle file and user io opperations

Package phpDocumentor Version $Id: Io.inc,v 1.80.2.8 2003/07/30 03:30:46 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]>

function Ioinc_mystrucsort($a, $b) [line 775]Function Parameters:

string $a string $b

Sorting functions for the file list

function Ioinc_sortfiles($a, $b) [line 770]Function Parameters:

string $a string $b

Sorting functions for the file list

array function setup_dirs($struc, $dir, $contents) [line 818]Function Parameters:

array $struc struc is array('dir' => array of files in dir,'dir/subdir' => array of files indir/subdir,...) array $dir array form of 'dir/subdir/subdir2' array('dir','subdir','subdir2')

Page 134 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 182: PhpDocumentor 1.2.2 Manual

Recursively move contents of $struc into associative array The contents of $struc have many indexes like 'dir/subdir/subdir2'. This function

converts them to array('dir' => array('subdir' => array('subdir2')))

array function set_dir($dir, $contents) [line 796]Function Parameters:

array $dir array $contents

Recursively add all the subdirectories of $contents to $dir without erasing anything in $dir

Page 135 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 183: PhpDocumentor 1.2.2 Manual

ParserDescCleanup.incAll of the functions to clean up and handle the long description of a DocBlock are in

this file. The primary functionality is based on Parser and WordParser, and modified to recognize

only the tokens defined in the PHPDOCUMENTOR_PDP_* constants

Package phpDocumentor Sub-Package Parsers Since 1.2 Author Greg Beaver < mailto:[email protected]> See Parser, WordParser

PHPDOCUMENTOR_PDP_EVENT_B = 605 [line 56]when <b> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_BR = 607 [line 64]when <br> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_CODE = 600 [line 36]when <code> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_DOUBLECR = 602 [line 44]when \n\n is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_ESCAPE = 608 [line 68]when the potential escape for tags is found in a desc

parserDescParser token constants

Page 136 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 184: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_EVENT_ESCAPE_CODE = 610 [line 76]when /code>> is found in a <code></code> section

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_ESCAPE_PRE = 609 [line 72]when /pre>> is found in a <pre></pre> section

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_I = 606 [line 60]when <i> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_KBD = 613 [line 88]when <kbd> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_LIST = 604 [line 52]when <ul>/<ol> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_P = 601 [line 40]when <p> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_PRE = 603 [line 48]when <pre> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_EVENT_SAMP = 612 [line 84]when <samp> is found in a desc

parserDescParser token constants

Page 137 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 185: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_EVENT_SIMLIST = 614 [line 99]when a simple list is found in a desc

parserDescParser token constants like o item 1 o item 2

PHPDOCUMENTOR_PDP_EVENT_VAR = 611 [line 80]when <var> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_B = 705 [line 58]when <b> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_BR = 707 [line 66]when <br> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_CODE = 700 [line 38]when <code> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_DOUBLECR = 702 [line 46]when \n\n is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_ESCAPE = 708 [line 70]when the potential escape for tags is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_ESCAPE_CODE = 710 [line 78]when /code>> is found in a <code></code> section

parserDescParser token constants

Page 138 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 186: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_STATE_ESCAPE_PRE = 709 [line 74]when /pre>> is found in a <pre></pre> section

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_I = 706 [line 62]when <i> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_KBD = 713 [line 90]when <kbd> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_LIST = 704 [line 54]when <ul>/<ol> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_P = 701 [line 42]when <p> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_PRE = 703 [line 50]when <pre> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_SAMP = 712 [line 86]when <samp> is found in a desc

parserDescParser token constants

PHPDOCUMENTOR_PDP_STATE_SIMLIST = 714 [line 108]when a simple list is found in a desc

parserDescParser token constants like o item 1 o item 2

Page 139 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 187: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_STATE_VAR = 711 [line 82]when <var> is found in a desc

parserDescParser token constants

Page 140 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 188: PhpDocumentor 1.2.2 Manual

phpdoc.inc

Package phpDocumentor

include "phpDocumentor/Setup.inc.php" [line 39]

All command-line handling from previous version has moved to here Many settings also moved to phpDocumentor.ini

Page 141 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 189: PhpDocumentor 1.2.2 Manual

ProceduralPages.incIntermediate procedural page parsing structure.

This structure parses defines, functions, and global variables by file, and then iteratesover the elements to document conflicts.

Package phpDocumentor Version $Id: ProceduralPages.inc,v 1.28.2.5 2003/08/13 20:18:56 CelloG Exp $ Since 1.1 Author Greg Beaver < mailto:[email protected]>

Page 142 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 190: PhpDocumentor 1.2.2 Manual

Publisher.inca class for handling the publishing of data

Package phpDocumentor Version $Id: Publisher.inc,v 1.11.2.1 2003/06/03 05:44:52 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]> Author Kellin < mailto:[email protected]>

Page 143 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 191: PhpDocumentor 1.2.2 Manual

Setup.inc.phpThis was all in phpdoc.inc, and now encapsulates the complexity

Package phpDocumentor Since 1.2 Version $Revision: 1.33.2.7 $ Author Greg Beaver < mailto:[email protected]>

$interface

array = $_GET['interface'] [line 60]

$interface is either 'web' or is not set at all

$phpDocumentor_DefaultCategoryName

string = 'default' [line 80]

default package name, set using -dn --defaultcategoryname

Name $phpDocumentor_DefaultCategoryName

$phpDocumentor_DefaultPackageName

string = 'default' [line 73]

default package name, set using -dn --defaultpackagename

Name $phpDocumentor_DefaultPackageName

Page 144 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 192: PhpDocumentor 1.2.2 Manual

$_phpDocumentor_setting

array = $_GET['setting'] [line 65]

$_phpDocumentor_setting is either the value from the web interface, or is set up byIo::parseArgv()

include_once "phpDocumentor/ParserDescCleanup.inc" [line 48]

include_once "phpDocumentor/HighlightParser.inc" [line 47]

include_once "phpDocumentor/PackagePageElements.inc" [line 49]

include_once "phpDocumentor/phpDocumentorTWordParser.inc" [line 45]

include_once "phpDocumentor/phpDocumentorTParser.inc" [line 46]

include_once "phpDocumentor/Converter.inc" [line 52]

include_once "phpDocumentor/Errors.inc" [line 53]

include_once "phpDocumentor/common.inc.php" [line 29]

common settings

include_once "phpDocumentor/LinkClasses.inc" [line 51]

include_once "phpDocumentor/XMLpackagePageParser.inc" [line 50]

include_once "phpDocumentor/Parser.inc" [line 44]

include_once "phpDocumentor/ProceduralPages.inc" [line 34]

include_once "phpDocumentor/IntermediateParser.inc" [line 35]

include_once "phpDocumentor/Classes.inc" [line 33]

include_once "phpDocumentor/Publisher.inc" [line 32]

Page 145 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 193: PhpDocumentor 1.2.2 Manual

include_once "phpDocumentor/Io.inc" [line 31]

include_once "phpDocumentor/WordParser.inc" [line 36]

include_once "phpDocumentor/EventStack.inc" [line 37]

include_once "phpDocumentor/DescHTML.inc" [line 41]

include_once "phpDocumentor/ParserDocBlock.inc" [line 42]

include_once "phpDocumentor/DocBlockTags.inc" [line 40]

include_once "phpDocumentor/InlineTags.inc" [line 39]

include_once "phpDocumentor/ParserElements.inc" [line 43]

include_once "phpDocumentor/ParserData.inc" [line 38]

function phpDocumentor_out($string) [line 733]Print parse information if quiet setting is off

Page 146 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 194: PhpDocumentor 1.2.2 Manual

add_cvs.phpCVS file adding iterator

This file iterates over a directory, and adds everything to CVS that is found, ignoring anyerror messages, until all files in each directory and subdirectory have been added to cvs. Itthen commits the files to cvs

Package phpDocumentor Version 1.0 Copyright Copyright 2003, Greg Beaver Author Greg Beaver < mailto:[email protected]>

$cvsadd_directory

string = realpath('.') [line 43]

Physical location on this computer of the package to parse

$files

Io = new Io [line 60]

$ignore

string = array('CVS/') [line 51]

Comma-separated list of files and directories to ignore This uses wildcards * and ? to remove extra files/directories that are not part of the

package or release

function addToCVS($struc) [line 124]Function Parameters:

array $struc the sorted directory structure

Recursively add files to cvs

Page 147 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 195: PhpDocumentor 1.2.2 Manual

function mystrucsort($a, $b) [line 73]Function Parameters:

string $a string $b

Sorting functions for the file list

require_once "$dir/phpDocumentor/common.inc.php" [line 35]

phpDocumentor include files. If you don't have phpDocumentor, go get it! Your php life will be changed forever

require_once "$dir/phpDocumentor/Io.inc" [line 36]

phpDocumentor include files. If you don't have phpDocumentor, go get it! Your php life will be changed forever

function sortfiles($a, $b) [line 68]Function Parameters:

string $a string $b

Sorting functions for the file list

Page 148 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 196: PhpDocumentor 1.2.2 Manual

create_examples.phpThis file creates example documentation output of all templates.

Package phpDocumentor

$base_package

string = "phpDocumentor" [line 35]

default package name, used to change all non-included files to this package

$output

array = array( $output_directory.'/docs/phpdoc_default' => 'HTML:default:default', $output_directory.'/docs/phpdoc_l0l33t' => 'HTML:default:l0l33t', $output_directory.'/docs/phpdoc_phpdoc_de' => 'HTML:default:phpdoc.de', $output_directory.'/docs/phpdoc_DOM_default' => 'HTML:default:DOM/default', $output_directory.'/docs/phpdoc_DOM_l0l33t' => 'HTML:default:DOM/l0l33t', $output_directory.'/docs/phpdoc_DOM_phpdoc_de' => 'HTML:default:DOM/phpdoc.de', $output_directory.'/docs/phpdoc_smarty_default' => 'HTML:Smarty:default' $output_directory.'/docs/phpdoc_pdf_default' => 'PDF:default:default' $output_directory.'/docs/phpdoc_chm_default' => 'CHM:default:default' ) [line 51]

directories to output examples into.

$output_directory

string = "/tmp" [line 30]

Directory the output should go to. Change this variable to an output directory on your computer

$parse_directory

string = "/home/jeichorn/phpdoc" [line 45]

location of the files to parse. Change to a location on your computer

$title

Page 149 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 197: PhpDocumentor 1.2.2 Manual

string = "phpDocumentor Generated Documentation" [line 40]

Title of the generated documentation

Page 150 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 198: PhpDocumentor 1.2.2 Manual

create_package.xml.php

Package phpDocumentor

require_once 'PEAR/PackageFileManager.php' [line 2]

Page 151 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 199: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Classes

Class Classes [line 48]

Intermediate class parsing structure. The phpDocumentor_IntermediateParser class uses this class and its cousin,

ProceduralPages to organize all parsed source code elements. Data is fed to eachimmediately after it is parsed, and at conversion time, everything is organized.

The Classes class is responsible for all inheritance, including resolving name conflictsbetween classes, determining which classes extend other classes, and is responsible for allinheritance of documentation.

Package phpDocumentor Version $Id: Classes.inc,v 1.52.2.3 2003/08/13 20:01:51 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

function Classes::addClass(&$element) [line 254]Function Parameters:

parserClass &$element element is a parserClass

While parsing, add a class to the list of parsed classes sets up the $classesbyfile, $classesbynamefile, $extendsbyfile, $classchildrenbyfile,

Page 152 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 200: PhpDocumentor 1.2.2 Manual

$roots arrays, and sets $curclass

Uses Classes::addPackageToFile() - marks the current class's package as being present in a file

function Classes::addMethod(&$element) [line 283]Function Parameters:

parserMethod &$element element is a parserMethod

While parsing, add a method to the list of parsed methods sets up the $methodsbyfile array using $curfile and $curclass

function Classes::addPackageToFile($package) [line 319]Function Parameters:

string $package package name

Mark a package as being used in a class 1 function addPackageToFile($package)

2 {3 if (!isset( $this-> revcpbf[$this-> curfile][$package]))4 $this-> classpackagebyfile[ $this-> curfile][] = $package;5 $this-> revcpbf[$this-> curfile][$package] = 1;6 }

Usedby Classes::addClass() - marks the current class's package as being present in a file

function Classes::addVar(&$element) [line 295]

Page 153 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 201: PhpDocumentor 1.2.2 Manual

Function Parameters:

parserVar &$element element is a parserVar

While parsing, add a variable to the list of parsed variables sets up the $varsbyfile array using $curfile and $curclass

parserClass function Classes::getClass($class, $file) [line 685]Function Parameters:

string $class classname string $file file classname is located in

Get the parserClass representation of a class from its name and file

mixed function Classes::getClassByPackage($class, $package) [line 822]Function Parameters:

string $class classname string $package package classname is in

Search for a class in a package

mixed function Classes::getClassesInPath($path) [line 698]Function Parameters:

string $path full path to filename

Used by parserData::getClasses() to retrieve classes defined in file $path retrieves the array entry from $classesbyfile for $path

mixed function Classes::getConflicts($class) [line 447]If a package contains two classes with the same name, this function finds that conflict

Page 154 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 202: PhpDocumentor 1.2.2 Manual

Returns the $classconflicts entry for class $class, minus its own path

mixed function Classes::getDefiniteChildren($parclass, $file) [line 935]Function Parameters:

string $parclass name of parent class string $file file parent class is found in

Get all classes confirmed in parsing to be descended class $parclass in file $file

Uses $definitechild See parserClass::getChildClassList()

mixed function Classes::getParentClass($class, $file) [line 851]Find the parent class of a class in file $file

uses 3 tests to find the parent classname:

1. only one class with the parent classname2. more than one class, but only one in the same file as the child3. only one parent class in the same package as the child

Usedby Classes::setClassParent() - to find the parent class

array function Classes::getRoots() [line 905]Get a list of all root classes indexed by package. Used to generate

class trees by Converter

function Classes::Inherit(&$render) [line 360]Function Parameters:

Page 155 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 203: PhpDocumentor 1.2.2 Manual

phpDocumentor_IntermediateParser &$render

Main processing engine for setting up class inheritance. This function uses $roots to traverse the inheritance tree via processChild() and returns

the data structures phpDocumentor_IntermediateParser needs to convert parsed data tooutput using phpDocumentor_IntermediateParser::Convert()

Uses Classes::processChild() - set up inheritance

function Classes::nextFile($file) [line 307]Function Parameters:

string $file file currently being parsed

Prepare to parse a new file sets $curfile to $file and $curclass to false (no class being parsed)

function Classes::processChild(&$render, $class, $file, [$furb = false]) [line 486]Function Parameters:

phpDocumentor_IntermediateParser &$render string $class class to process string $file name of file $class is located in boolean $furb flag used privately to control informational output while parsing (used when processing leftover classes in Inherit()

This function recursively climbs up the class tree, setting inherited information likepackage and adds the elements to phpDocumentor_IntermediateParser. Using structures defined in Classes, the function first sets package information, and then

seeks out child classes. It uses 3 tests to determine whether a class is a child class.

Page 156 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 204: PhpDocumentor 1.2.2 Manual

1. child class is in the same file as the parent class and extends parent class2. child class is in a different file and specifies the parent's @package in its docblock3. child class is in a different file and is in a different @package, with one possible parent

class

Global Variable Used string $phpDocumentor_DefaultPackageName: default package, usually"default" Usedby Classes::Inherit() - set up inheritance

function Classes::setClassParent($class, $file) [line 337]Function Parameters:

string $class child class to find parent class string $file file child class is located in

Find the parent class of $class, and set up structures to note this fact Modifies the parserClass element in $classesbyfile to use the parent's package, and

inherit methods/vars

Uses Classes::getParentClass() - to find the parent class Uses $definitechild - if a match is made between a parent class and parameter $class in file $file, then definitechild is set here

Class EventStack [line 34]

Page 157 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 205: PhpDocumentor 1.2.2 Manual

An event Stack

Package phpDocumentor Version $Id: EventStack.inc,v 1.8.2.1 2003/06/03 05:44:52 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]>

EventStack::$num

integer = 0 [line 46]

The number of events in the stack

EventStack::$stack

array = array(PARSER_EVENT_NOEVENTS) [line 40]

The stack

int function EventStack::getEvent() [line 74]Get the current event

int function EventStack::popEvent() [line 63]Pop an event from the stack

function EventStack::pushEvent($event) [line 53]Function Parameters:

int $event All events must be constants

Push an event onto the stack

Page 158 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 206: PhpDocumentor 1.2.2 Manual

Class Io [line 34]

Class to handle file and user io opperations

Package phpDocumentor Version $Id: Io.inc,v 1.80.2.8 2003/07/30 03:30:46 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]>

Io::$ignore

false|array = false [line 47]

Format: array(array(regexp-ready string to search for whole path, regexp-ready string to search for basename of ignore strings),...)

Io::$phpDocOptions

mixed = [line 41]

Holds all the options that are avaible to the cmd line interface and to the different web interfaces

Constructor function Io::Io() [line 58]creates an array $this->phpDocOptions and sets program options in it.

Array is in the format of: [filename][tag][] = "f"; [filename][tag][] = "-file"; [filename][desc] "name of file to parse"

bool function Io::checkIgnore($file, $path, $ignore, [$ignore_no_ext = true]) [line 590]Function Parameters:

string $file just the file name of the file or directory, in the case of directoriesthis is the last dir string $path the full path array $ignore

Page 159 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 207: PhpDocumentor 1.2.2 Manual

Tell whether to ignore a file or a directory allows * and ? wildcards

Author Greg Beaver < mailto:[email protected]>

array function Io::dirList($directory, [$hidden = "off"]) [line 285]Function Parameters:

string $directory full path to the directory you want the list of off|on $hidden whether to list files that begin with . like .bash_history

string function Io::displayHelpMsg() [line 155]create the help message for display on the command-line

mixed function Io::getAllFiles($file) [line 750]Function Parameters:

string $file a full path from the -f command-line parameter, with potential * and ? wildcards.

Take a filename with wildcards and return all files that match the wildcards

Author Greg Beaver < mailto:[email protected]>

function Io::getBase($filelist) [line 346]Function Parameters:

array $filelist array of strings

Page 160 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 208: PhpDocumentor 1.2.2 Manual

Retrieve common directory (case-insensitive in windows) takes the list of files, and returns the subdirectory they share in common, so in this list:

1 array(2 "/dir1/dir2/subdir/dir3/filename.ext" ,3 "/dir1/dir2/subdir/dir4/filename.ext" ,4 "/dir1/dir2/mydir/dir5/filename.ext" );

getBase will return "/dir1/dir2"

function Io::getDirTree($dir, $base_dir, [$ignore = array()], [$hidden = "off"]) [line 455]array function Io::getReadmeInstallChangelog($base, $filelist) [line 438]

Function Parameters:

string $base base directory from getBase() array $filelist file list from dirList()

string function Io::getRegExpableSearchString($s) [line 697]Function Parameters:

string $s string with wildcards ? and *

Converts $s into a string that can be used with preg_match

Author Greg Beaver < mailto:[email protected]>

array function Io::getTutorials($filelist) [line 394]Function Parameters:

array $filelist array of paths (strings)

Retrieve tutorial subdirectories and their contents from the list of files to parse

Page 161 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 209: PhpDocumentor 1.2.2 Manual

boolean function Io::isIncludeable($filename) [line 196]Function Parameters:

string $filename

calls http://www.php.net/file_exists for each value in include_path, then calls http://www.php.net/is_readable when it finds the file

array function Io::parseArgv() [line 223]Parses $_SERVER['argv'] and creates a setup array

Global Variable Used array 0: command-line arguments

function Io::readPhpFile($path, [$quietMode = false]) [line 531]Function Parameters:

string $path

Reads a file and returns it as a string Does basic error checking file extensions are set in phpdoc.inc

Global Variable Used array $_phpDocumentor_cvsphpfile_exts: PHP File extensions, used tovalidate that $path is a PHP File Global Variable Used array $_phpDocumentor_phpfile_exts: PHP File extensions in a CVSrepository, used to validate that $path is a PHP File

string|array function Io::removeNonMatches($dir, $match) [line 723]Function Parameters:

Page 162 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 210: PhpDocumentor 1.2.2 Manual

array $dir array of filenames (full path) string $match search string with wildcards

Removes files from the $dir array that do not match the search string in $match

Author Greg Beaver < mailto:[email protected]>

function Io::_setupIgnore($ignore) [line 663]Function Parameters:

array $ignore strings of files/paths/wildcards to ignore

Construct the $ignore array

Access protected Author Greg Beaver < mailto:[email protected]>

Class phpDocumentor_IntermediateParser [line 49]

The phpDocumentor_IntermediateParser Class This class performs the work of organizing raw data from the parser in the format of

descendants of the parserElement class. This is also where processing of package pagesoccurs, in phpDocumentor_IntermediateParser::handleClass() for class-level packages and

Page 163 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 211: PhpDocumentor 1.2.2 Manual

phpDocumentor_IntermediateParser::handleDocBlock() for page-level packages.

Most of the work of this parser goes to matching up DocBlocks with the elements that theyare documenting. Since DocBlocks are passed before the element they document, the lastDocBlock is stored in phpDocumentor_IntermediateParser::$last and then placed into the $docblock parameter of the parserElement descendant object.

Package phpDocumentor Copyright 2002 Gregory Beaver Version $Id: IntermediateParser.inc,v 1.122.2.15 2003/08/14 05:12:15 CelloG Exp $ Author Gregory Beaver

phpDocumentor_IntermediateParser::$all_packages

array = array() [line 175]

list of all packages encountered while documenting. Used in automatic linking. Converter::getLink() first checks if an ambiguous link is found in the current package. If

not, it then checks in parent packages, and if still not found, uses this array to check in therest of the packages before giving up

Var Format: array(packagename => 1, packagename => 1,...) See Converter::getLink()

phpDocumentor_IntermediateParser::$classes

Classes = false [line 243]

used to keep track of inheritance at the smartest level possible for a dumb computer

phpDocumentor_IntermediateParser::$converters

Page 164 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 212: PhpDocumentor 1.2.2 Manual

array = false [line 262]

an array of template names indexed by converter name For example, if the default HTMLframesConverter is using the DOM/l0l33t template, the

array will be 1 $converters['frames'] = 'DOM/l0l33t'

Var Format: array(Convertername1 => templatename) See Converter

phpDocumentor_IntermediateParser::$cur_class

string = '' [line 77]

Name of the class currently being parsed. It is only used (and only valid) when phpDocumentor_IntermediateParser is parsing a

class

phpDocumentor_IntermediateParser::$data

parserData = [line 225]

$data contains parsed structures for the current page being parsed In version 1.1+, $data is only used to store the current page information. All handling of

documented elements is handled by the ProceduralPages and Classes classes.

phpDocumentor_IntermediateParser::$db_template

mixed = [line 270]

phpDocumentor_IntermediateParser::$event_handlers

mixed = array( 'docblock' => 'handleDocBlock', 'page' => 'handlePage', 'class' => 'handleClass', 'define' => 'handleDefine', 'function' => 'handleFunction', 'method' => 'handleMethod', 'var' => 'handleVar', 'packagepage' => 'handlePackagePage', 'include' => 'handleInclude',

Page 165 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 213: PhpDocumentor 1.2.2 Manual

'global' => 'handleGlobal', 'tutorial' => 'handleTutorial', ) [line 203]

the functions which handle output from the Parser

See phpDocumentor_IntermediateParser::handlePackagePage(),phpDocumentor_IntermediateParser::handleInclude(),phpDocumentor_IntermediateParser::handleTutorial() See phpDocumentor_IntermediateParser::handleDefine(),phpDocumentor_IntermediateParser::handleFunction(),phpDocumentor_IntermediateParser::handleMethod(),phpDocumentor_IntermediateParser::handleVar() See handleEvent(), phpDocumentor_IntermediateParser::handleDocBlock(),phpDocumentor_IntermediateParser::handlePage(),phpDocumentor_IntermediateParser::handleClass()

phpDocumentor_IntermediateParser::$last

parserDocBlock = [line 54]

phpDocumentor_IntermediateParser::$lasttype

string = '' [line 69]

type of the last parser Element handled This is used in handleDocBlock to determine whether a DocBlock is a page-level

DocBlock in conjunction with the parserData::$clean var. A page-level DocBlock isalwaysthe first DocBlock in a file, and must be followed by another DocBlock. The first test ishandled by parserData::$clean, which is set to false on the first encounter of an element,and the second test is handled by this variable, which must be equal to "docblock"

See phpDocumentor_IntermediateParser::handleDocBlock()

phpDocumentor_IntermediateParser::$packagecategories

array = array() [line 162]

Used to determine the category for tutorials.

Page 166 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 214: PhpDocumentor 1.2.2 Manual

WARNING: If more than one category exists, the last category encountered willoverwrite the previous and will raise a big warning

Var Format: packagename => categoryname

phpDocumentor_IntermediateParser::$packageoutput

false|array = false [line 195]

array of packages to parser and output documentation for, if not all packages shouldbe documented Format:

array(package1,package2,...) or false if not set

Use this option to limit output similar to ignoring files. If you have some temporary files thatyou don't want to specify by name but don't want included in output, set a package name forall the elements in your project, and set packageoutput to that name. the default packagewill be ignored. Parsing speed does not improve. If you want to ignore files for speedreasons, use the ignore command-line option

See Io Tutorial -po, --packageoutput

phpDocumentor_IntermediateParser::$package_pages

array = array() [line 122]

array of parsed package pages used by Convert() to convert all package pages into output

phpDocumentor_IntermediateParser::$package_parents

array = array() [line 153]

Page 167 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 215: PhpDocumentor 1.2.2 Manual

Keeps track of packages of classes that have parent classes in another package. Used in automatic linking. This array is updated by addPackageParent(), which is called in Classes::processChild()

to keep track of classes that descend from classes in different packages. In other words, ifclass foo is in package one, and class bar is in package two, an entry $package_parents['two'] = 'one' will be made.

Var Format: packagename => parentpackagename See Converter::getLink()

phpDocumentor_IntermediateParser::$pages

array = array() [line 127]

Var array of all parserData containing page information

phpDocumentor_IntermediateParser::$parsePrivate

boolean = false [line 95]

set in Setup.inc.php to the value of the parseprivate commandline option. If this option is true, elements with an @access private tag will be parsed and

displayed

Tutorial -pp, --parseprivate

phpDocumentor_IntermediateParser::$privatepages

array = array() [line 140]

Put away a page that has been @ignored or @access private if !$parsePrivate When a page has @access private in its DocBlock, it is placed here instead of in

Page 168 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 216: PhpDocumentor 1.2.2 Manual

$pages, to allow for proper Class parsing. Since classes and pages are parsed as if theywere separate, this array allows public classes on private pages to retrieve informationneeded about the page that holds the class and to addPageIfNecessary() to the $pagesarray

phpDocumentor_IntermediateParser::$private_class

mixed = false [line 102]

this variable is used to prevent parsing of elements with an @ignore tag

See phpDocumentor_IntermediateParser::$parsePrivate See phpDocumentor_IntermediateParser::$packageoutput

phpDocumentor_IntermediateParser::$proceduralpages

ProceduralPages = false [line 251]

used to keep track of all elements in a procedural page. Handles name conflicts with elegance

Since 1.1

phpDocumentor_IntermediateParser::$quietMode

boolean = false [line 236]

set in Setup.inc.php to the value of the quitemode commandline option. If this option is true, informative output while parsing will not be displayed

(documentation is unaffected)

Tutorial -q, --quiet

Page 169 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 217: PhpDocumentor 1.2.2 Manual

phpDocumentor_IntermediateParser::$ric

array = array() [line 278]

Stores parsed CHANGELOG/INSTALL/README files

Var Format: array(CHANGELOG => contents, INSTALL => contents, README => contents)

phpDocumentor_IntermediateParser::$targetDir

mixed = [line 108]

used to set the output directory

See phpDocumentor_IntermediateParser::setTargetDir()

phpDocumentor_IntermediateParser::$templateBase

mixed = [line 114]

used to set the template base directory

See phpDocumentor_IntermediateParser::setTemplateBase()

phpDocumentor_IntermediateParser::$title

string = '' [line 266]

Page 170 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 218: PhpDocumentor 1.2.2 Manual

Var Title of generated documentation, passed to Converters

phpDocumentor_IntermediateParser::$type

string = '' [line 86]

type of the current parser Element being handled This is used by HandleEvent() to set the $lasttype var, which is used to detect page-

level DocBlocks

phpDocumentor_IntermediateParser::$uses

mixed = array() [line 268]

Constructor function phpDocumentor_IntermediateParser::phpDocumentor_IntermediateParser([$title ='Generated Documentation']) [line 301]

Function Parameters:

string $title Title of generated documentation, passed to Converters

sets up basic data structures

See phpDocumentor_IntermediateParser::$title, phpDocumentor_IntermediateParser::$data,phpDocumentor_IntermediateParser::$classes,phpDocumentor_IntermediateParser::$proceduralpages

function phpDocumentor_IntermediateParser::addConverter($output, $name, $template) [line 1547]Function Parameters:

string $output output format (HTML, PDF, XML). Must be all caps string $name Converter name (frames, for example, is the name of HTMLframesConverter) string $template template to use, should be a relative path to the templates dir(like DOM/default)

Page 171 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 219: PhpDocumentor 1.2.2 Manual

Add a converter name to use to the list of converters Sets up the $converters array.

function phpDocumentor_IntermediateParser::addElementToPage($element, $path) [line 1330]Function Parameters:

parserElement $element this will actually be a descendant of parserElement string $path

adds a processed descendant of parserElement to the $pages array or $privatepagesarray This function expects the page to exist in either $pages or $privatepages. It calls the

parserData::addElement() method to add $element to the page.

function phpDocumentor_IntermediateParser::addPackageParent(&$class) [line 1524]Function Parameters:

parserClass &$class

If the parent class of $class is in a different package, adds it to the $package_parents array

function phpDocumentor_IntermediateParser::addPage($page, $path) [line 1234]Function Parameters:

parserPage $page string $path full path to the file

Replaces the parserPage represented by $this->pages[$path] with $page Called by addPageIfNecessary(), handleDocBlock() and

ProceduralPages::setupPages(), this method first checks to see if the page has been added. If not, it assumes that the page has either been @ignored or set with @access private with --parseprivate off, and returns addPrivatePage(). Otherwise, it sets the pages[$path] to be theparserPage $page and sets the package and subpackage to that of $page

Page 172 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 220: PhpDocumentor 1.2.2 Manual

See phpDocumentor_IntermediateParser::$pages

function phpDocumentor_IntermediateParser::addPageIfNecessary($path, &$class) [line 1264]Function Parameters:

string $path full path of page

add a new parserPage to the $pages array if none is found This method is used when a page has been @ignored or marked with @access private,

and a public class is in the page (a class with no @access private in its DocBlock). Themethod first creates a new page in the $pages array and then copies path information, andcalls addPage() to set up packages

function phpDocumentor_IntermediateParser::addPrivatePage($page, $path) [line 1302]Function Parameters:

parserPage $page string $path full path to the page

Adds a parserPage element to the parserData element in $this->privatepages[$path] Performs a similar function to addPage, but adds to the $privatePages array

See phpDocumentor_IntermediateParser::addPage()

function phpDocumentor_IntermediateParser::addUses($element, $path) [line 1360]Function Parameters:

parserElement $element descendant of parserElement

Page 173 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 221: PhpDocumentor 1.2.2 Manual

string $path full path to the file

Add all the @uses tags from $element to the $uses array so that @usedby virtual tags can be added

Uses parserUsesTag::getDescription() - used to initialize $uses Uses parserUsesTag::getSeeElement() - used to initialize $uses

int function phpDocumentor_IntermediateParser::ClasselementCmp($a, $b) [line 1602]Function Parameters:

mixed $a mixed $b

does a natural case sort on two class elements (either parserClass, parserMethod orparserVar

See generateElementIndex()

function phpDocumentor_IntermediateParser::Convert($title, $converter) [line 1490]Interface to the Converter

This function simply passes $pages and package_pages to the walk() method, and thencalls the Output() method. Note that Output() is not required to do anything, and in factdoesn't in HTMLframesConverter.

Uses Converter::Output()

Page 174 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 222: PhpDocumentor 1.2.2 Manual

Uses Converter::walk() - passes $pages and $package_pages

int function phpDocumentor_IntermediateParser::elementCmp($a, $b) [line 1588]Function Parameters:

mixed $a mixed $b

does a natural case sort on two parserElement descendants

See generateElementIndex()

function phpDocumentor_IntermediateParser::handleClass($event, $data) [line 797]Function Parameters:

integer $event Event number from Parser.inc parserClass $data

handles post-parsing of classes This function sets $data->clean to false to tell the

phpDocumentor_IntermediateParser that a page-level DocBlock can't be found after thispoint on this page. It sets $cur_class to its name, and if an @ignore tag is found in theDocBlock, it sets $private_class to true, to prevent post-parsing of any of the class's vars ormethods. Then it checks for the existence of a package page for the class's package

function phpDocumentor_IntermediateParser::handleDefine($event, $data) [line 745]Function Parameters:

integer $event Event number from Parser.inc parserDefine $data

Page 175 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 223: PhpDocumentor 1.2.2 Manual

handles post-parsing of defines This function sets $data->clean to false to tell the

phpDocumentor_IntermediateParser that a page-level DocBlock can't be found after thispoint on this page. It then sets the package to be the same as the page and adds itself to theProceduralPages class

function phpDocumentor_IntermediateParser::handleDocBlock($event, $data) [line 914]Function Parameters:

integer $event Event number from Parser.inc parserDocBlock $data

handles post-parsing of DocBlocks This function sets $last to the DocBlock represented by $data, to allow the next

documentable element passed to phpDocumentor_IntermediateParser to link the DocBlockinto its $docblock property. This function also checks for two special cases of DocBlocks:

1. First DocBlock in the file contains a @package tag2. First DocBlock in the file is immediately followed by another

DocBlock In both cases, the function extracts this tag and uses it as the page-level package. If

the @package tag is in the DocBlock of an element (function, global variable, whatever) thatisn't a page-level DocBlock, a warning will be raised to notify the author that a @package tag belongs in a page-level DocBlock.

New in version 1.2.2, if the first DocBlock in a file contains a @package tag, it is a page-levelDocBlock.

If the DocBlock is page-level, it is processed with _processPageLevelDocBlock

Finally, the function replaces the old parserPage in parserData::$data->parent with thenew one containing information from the DocBlock by calling addPage(), and checks for package-level docs.

function phpDocumentor_IntermediateParser::HandleEvent($event, $data) [line 1094]Function Parameters:

integer $event event number from Parser.inc mixed $data if $event is PHPDOCUMENTOR_EVENT_NEWSTATE, $data is a

Page 176 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 224: PhpDocumentor 1.2.2 Manual

PHP_DOC_EVENT_END_PAGE or STATE_END_CLASS, otherwise $data iseither a parserDocBlock, parserPage or descendant of parserElement

called via Parser::parse() and Parser's inherited method Publisher::publishEvent() $event is one of the PHPDOC constants from Parser.inc. If it is not

PHPDOCUMENTOR_EVENT_NEWSTATE, then a function name is retrieved from the $event_handlers array and called to handle the $data

Global Variable Used array $_phpDocumentor_setting$phpDocumentor_DefaultPackageName:we use 'sourcecode' to determine whether to highlight the source of the current file if it has no file-level docblock

function phpDocumentor_IntermediateParser::handleFunction($event, $data) [line 663]Function Parameters:

integer $event Event number from Parser.inc parserFunction $data

handles post-parsing of functions This function sets $data->clean to false to tell the

phpDocumentor_IntermediateParser that a page-level DocBlock can't be found after thispoint on this page. It then sets the package to be the same as the page, aligns thedocblock's @param, @global, and @staticvar tags with the information parsed from thefunction source code.

If source code has been parsed by a {@source} tag, the source is added to its docblock, andthen the parserFunction adds itself to the ProceduralPages class

function phpDocumentor_IntermediateParser::handleGlobal($event, $data) [line 430]Function Parameters:

integer $event Event number from Parser.inc parserGlobal $data

Page 177 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 225: PhpDocumentor 1.2.2 Manual

handles post-parsing of global variables This function sets $data->clean to false to tell the

phpDocumentor_IntermediateParser that a page-level DocBlock can't be found after thispoint on this page. It then sets the package to be the same as the page, and adds itself tothe ProceduralPages class

function phpDocumentor_IntermediateParser::handleInclude($event, $data) [line 378]Function Parameters:

integer $event Event number from Parser.inc parserInclude $data

handles post-parsing of include/require/include_once/include_once This function sets $data->clean to false to tell the

phpDocumentor_IntermediateParser that a page-level DocBlock can't be found after thispoint on this page. It then sets the package to be the same as the page, and adds itself tothe ProceduralPages class

function phpDocumentor_IntermediateParser::handleMethod($event, $data) [line 576]Function Parameters:

integer $event Event number from Parser.inc parserMethod $data

handles post-parsing of class methods This function first aligns $data's path and package to match the parent object, and also

aligns the docblock's @param, @global, and @staticvar tags with the information parsedfrom the method source code. It also checks to see if the method is a constructor and setsthe $isConstructor flag. If source code has been parsed by a {@source} tag, the source is added to its docblock

Finally, it adds the method to the Classes class.

function phpDocumentor_IntermediateParser::handlePackagePage($event, $data) [line 481]Function Parameters:

Page 178 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 226: PhpDocumentor 1.2.2 Manual

integer $event Event number from Parser.inc parserPackagePage $data

handles post-parsing of Package-level documentation pages. sets the $package_pages[$data->package] to $data

function phpDocumentor_IntermediateParser::handlePage($event, $data) [line 868]Function Parameters:

integer $event Event number from Parser.inc parserPage $data

handles post-parsing of procedural pages this event is called at the start of a new page, before the Parser knows whether the page

will contain any procedural pages or not

function phpDocumentor_IntermediateParser::handleTutorial($event, $data) [line 496]Function Parameters:

integer $event Event Number parserTutorial $data

handle post-parsing of Tutorials. This adds the parsed tutorial to the tutorial tree

Since 1.2 Uses $tutorials - sets the value of tutorials to parameter $data

function phpDocumentor_IntermediateParser::handleVar($event, $data) [line 516]Function Parameters:

Page 179 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 227: PhpDocumentor 1.2.2 Manual

integer $event Event number from Parser.inc parserVar $data

handles post-parsing of class vars This function sets up a @var tag if none is found, and aligns $data's $path var and

packages to match the parent object

function phpDocumentor_IntermediateParser::Output([$title = "Generated Documentation"]) [line 1632]call this method once parsing has completed.

This method calls the private methods fixClasses and fixProcPages, both of which adjustinheritance and package information based on complicated post-parsing rules described inProceduralPages::setupPages() and Classes::Inherit(). Then, it sorts elements of the $pages array and calls Convert for each Converter in the $converters array

See phpDocumentor_IntermediateParser::Convert() See phpDocumentor_IntermediateParser::$pages See phpDocumentor_IntermediateParser::$converters

function phpDocumentor_IntermediateParser::parsePackagePage($package, $path) [line 1048]Function Parameters:

string $package package name of package file to parse string $path directory of file that contains package name

Backward-compatibility only, use the new tutorials for more power

Tutorial phpDocumentor Tutorials

Page 180 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 228: PhpDocumentor 1.2.2 Manual

function phpDocumentor_IntermediateParser::setParsePrivate($parse) [line 1744]Function Parameters:

bool $parse

set display of elements marked with @access private If set to true, elements will be displayed

function phpDocumentor_IntermediateParser::setQuietMode($quietMode) [line 1733]Function Parameters:

bool $quietMode

set parsing information output mode (quiet or verbose) If set to false, no parsing information (parsing /php/file/thisfile.php, Converting etc.) will

be displayed. Useful for cron jobs

function phpDocumentor_IntermediateParser::setTargetDir($dir) [line 1709]Function Parameters:

string $dir the output directory

Sets the output directory

function phpDocumentor_IntermediateParser::setTemplateBase($dir) [line 1720]Function Parameters:

string $dir the template base directory

Sets the template base directory

Page 181 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 229: PhpDocumentor 1.2.2 Manual

Tutorial -tb, --templatebase

function phpDocumentor_IntermediateParser::_guessPackage($path, $sourceloc) [line 351]Function Parameters:

string $path full path of file template-ready $sourceloc source location Program_Root/dir/file.php

Guess the package/subpackage based on subdirectory if the --pear option A file in pear/dir/file.php will be in package "dir." A file in

pear/dir/subdir/file.php will be in package "dir," subpackage "subdir."

Global Variable Used array $_phpDocumentor_setting: uses the 'pear' option to determinewhether to guess based on subdirectory Tutorial -p, --pear

Class phpDocumentor_setup [line 85]

Package phpDocumentor

phpDocumentor_setup::$dirs

string = '' [line 118]

contents of --directory commandline

Page 182 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 230: PhpDocumentor 1.2.2 Manual

Tutorial -d, --directory

phpDocumentor_setup::$files

string = '' [line 112]

contents of --filename commandline

Tutorial -f, --filename

phpDocumentor_setup::$hidden

boolean = false [line 124]

contents of --hidden commandline

Tutorial -h, --hidden

phpDocumentor_setup::$ignore_files

string = array() [line 135]

contents of --ignore commandline

Tutorial -i, --ignore

phpDocumentor_setup::$packages

string = false [line 106]

Page 183 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 231: PhpDocumentor 1.2.2 Manual

Packages to create documentation for

phpDocumentor_setup::$parse

Parser|phpDocumentorTParser = [line 91]

The main parser

phpDocumentor_setup::$render

phpDocumentor_IntermediateParser = false [line 101]

Used to organize output from the Parser before Conversion

phpDocumentor_setup::$setup

Io = [line 96]

Used to parse command-line options

Constructor function phpDocumentor_setup::phpDocumentor_setup() [line 141]Checks PHP version, makes sure it is 4.2.0+, and chooses the

phpDocumentorTParser if version is 4.3.0+

Uses phpDocumentor_setup::parseIni()

function phpDocumentor_setup::checkIgnoreTag($tagname, [$inline = false]) [line 334] function phpDocumentor_setup::createDocs([$title = false]) [line 404] function phpDocumentor_setup::parseHiddenFiles() [line 388] function phpDocumentor_setup::parseIni() [line 634]

Parse configuration file phpDocumentor.ini

Usedby phpDocumentor_setup::phpDocumentor_setup()

function phpDocumentor_setup::readCommandLineSettings() [line 201]

Page 184 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 232: PhpDocumentor 1.2.2 Manual

Get phpDocumentor settings from command-line or web interface

function phpDocumentor_setup::readConfigFile($file) [line 171]Function Parameters:

string $file user configuration file

Get phpDocumentor settings from a user configuration file

function phpDocumentor_setup::setDirectoriesToParse($dirs) [line 383] function phpDocumentor_setup::setFilesToParse($files) [line 378] function phpDocumentor_setup::setIgnore($ig) [line 393] function phpDocumentor_setup::setJavadocDesc() [line 343] function phpDocumentor_setup::setPackageOutput($po) [line 368] function phpDocumentor_setup::setParsePrivate() [line 348] function phpDocumentor_setup::setQuietMode() [line 353] function phpDocumentor_setup::setTargetDir($target) [line 358] function phpDocumentor_setup::setTemplateBase($dir) [line 363] function phpDocumentor_setup::setTitle($ti) [line 373] function phpDocumentor_setup::setupConverters([$output = false]) [line 681]

Class ProceduralPages [line 38]

Intermediate procedural page parsing structure. This structure parses defines, functions, and global variables by file, and then iterates

over the elements to document conflicts.

Package phpDocumentor Version $Id: ProceduralPages.inc,v 1.28.2.5 2003/08/13 20:18:56 CelloG Exp $ Since 1.1 Author Greg Beaver < mailto:[email protected]>

ProceduralPages::$curfile

Page 185 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 233: PhpDocumentor 1.2.2 Manual

string = [line 45]

file being parsed, used in every add function to match up elements with the file thatcontains them

See addClass(), addMethod(), addVar(), nextFile()

ProceduralPages::$defineconflicts

array = array() [line 156]

Namespace conflicts within all documented packages of functions Format: array(functionname => array(full path, full path,...))

ProceduralPages::$definesbyfile

array = array() [line 87]

array of parsed defines organized by the full path of the file that contains the define. Format: array(full path => array(definename => parserDefine))

ProceduralPages::$definesbynamefile

array = array() [line 112]

array of file names organized by defines that are in the file. This structure is designed to handle name conflicts. Two files can contain defines with

the same name, and this array will record both filenames to help control namespace errors Format: array(definename => array(full path of file containing definename, full path of file 2containing definename...)

ProceduralPages::$functionconflicts

array = array() [line 142]

Namespace conflicts within all documented packages of functions Format: array(functionname => array(full path, full path,...))

Page 186 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 234: PhpDocumentor 1.2.2 Manual

ProceduralPages::$functionsbyfile

array = array() [line 80]

array of parsed functions organized by the full path of the file that contains thefunction. Format: array(full path => array(functionname => parserFunction))

ProceduralPages::$functionsbynamefile

array = array() [line 103]

array of file names organized by functions that are in the file. This structure is designed to handle name conflicts. Two files can contain functions with

the same name, and this array will record both filenames to help control namespace errors Format: array(functionname => array(full path of file containing functionname, full path offile 2 containing functionname...)

ProceduralPages::$globalconflicts

array = array() [line 163]

Namespace conflicts within all documented packages of functions Format: array(functionname => array(full path, full path,...))

ProceduralPages::$globalsbyfile

array = array() [line 94]

array of parsed global variables organized by the full path of the file that contains theglobal variable definition. Format: array(full path => array(globalname => parserGlobal))

ProceduralPages::$globalsbynamefile

array = array() [line 121]

array of file names organized by global variables that are in the file. This structure is designed to handle name conflicts. Two files can contain global

variables with the same name, and this array will record both filenames to help controlnamespace errors Format: array(global variablename => array(full path of file containingglobal variablename, full path of file 2 containing global variablename...)

Page 187 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 235: PhpDocumentor 1.2.2 Manual

ProceduralPages::$ignorepages

array = array() [line 59]

array of all procedural pages ordered by name that have been ignored via -po or@access private or @ignore Format: array(name => array(fullpath => parserPage,fullpath => parserPage2 [if

there are name conflicts],...))

ProceduralPages::$includesbyfile

array = array() [line 73]

array of parsed includes organized by the full path of the file that contains the include. Format: array(full path => array(includename => parserInclude))

ProceduralPages::$pageclasspackages

array = array() [line 135]

array of packages assigned to classes in a file, ordered by fullpath Format: array(fullpath => array(packagename => array(subpackagename =>

1,subpackagename => 1,..),packagename2 =>...)

ProceduralPages::$pageconflicts

array = array() [line 149]

Namespace conflicts within all documented pages Format: array(pagename => array(fullpath, fullpath,...))

ProceduralPages::$pagepackages

array = array() [line 128]

array of packages ordered by full path Format: array(fullpath => array(packagename,subpackagename))

ProceduralPages::$pages

array = array() [line 52]

Page 188 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 236: PhpDocumentor 1.2.2 Manual

array of all procedural pages ordered by name Format: array(name => array(fullpath => parserPage,fullpath => parserPage2 [if

there are name conflicts],...))

ProceduralPages::$pathpages

array = array() [line 66]

array of all procedural page names ordered by full path to the file Format: array(fullpath => name)

function ProceduralPages::addClassPackageToFile($file, $package, $subpackage) [line 397]Function Parameters:

string $file full path to the file that contains the class string $package package name

adds a package from a class to the current file

function ProceduralPages::addDefine(&$element) [line 330]Function Parameters:

parserDefine &$element

sets up the $definesbyfile array using $curfile

function ProceduralPages::addFunction(&$element) [line 288]Function Parameters:

parserFunction &$element

sets up the $functionsbyfile array using $curfile

function ProceduralPages::addGlobal(&$element) [line 309]Function Parameters:

Page 189 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 237: PhpDocumentor 1.2.2 Manual

parserGlobal &$element

sets up the $globalsbyfile array using $curfile

function ProceduralPages::addInclude(&$element) [line 279]Function Parameters:

parserInclude &$element

sets up the $includesbyfile array using $curfile

function ProceduralPages::addPage(&$element) [line 175]Function Parameters:

parserPage &$element

sets up the $pages array

function ProceduralPages::addPagePackage($path, $package, $subpackage) [line 232]Function Parameters:

string $path full path string $package string $subpackage

Changes the package of the page represented by $path changes package in both the $pages array and the pagepackages array

function ProceduralPages::getPathInfo($path, &$c) [line 193]array|string function ProceduralPages::getRealPath($path, $file, 2) [line 750]

Function Parameters:

string 2 full path to base directory of parsing, used for .

Page 190 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 238: PhpDocumentor 1.2.2 Manual

string $path include() statement path to check string $file full path of file the statement is in

function ProceduralPages::ignorePage(&$element) [line 187]Function Parameters:

parserPage &$element

moves a page from the $pages array to the $ignorepages array

false|parserPage function ProceduralPages::pathMatchesParsedFile($path, $infile) [line 709] function ProceduralPages::replaceElement(&$element) [line 351]

Function Parameters:

parserElement &$element

Used to align an element with the package of its parent page prior to Conversion.

function ProceduralPages::setName($name) [line 216]Function Parameters:

string $name

Change a page's name from its file to alias $name This function is used to handle a @name tag in a page-level DocBlock

function ProceduralPages::setParseBase($pbase) [line 701] function ProceduralPages::setupPagePackages() [line 413]

if there is one class package in a file, the parent path inherits the package if itspackage is default. helps with -po to avoid dumb bugs

function ProceduralPages::setupPages(&$render) [line 649]Function Parameters:

Page 191 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 239: PhpDocumentor 1.2.2 Manual

phpDocumentor_IntermediateParser &$render

Adjusts packages of all pages and removes name conflicts within a package Automatic linking requires that each linkable name have exactly one element associated

with it. In other words, there cannot be two functions named foo() in the same package. Thisalso adheres to php rules with one exception:

1 if ($test == 3)2 {3 define('whatever','this thing');4 } else5 {6 define('whatever','this other thing');7 }

phpDocumentor is not aware of conditional control structures because it would slow things down considerably. So,what phpDocumentor does is automatically ignore the second define and raise a warning. The warning can beeliminated with an @ignore tag on the second element like so:

1 if ($test == 3)2 {3 define('whatever','this thing');4 } else5 {6 /** @ignore */7 define('whatever','this other thing');8 }

if there are two files that contain the same procedural elements in the same package (for example, a commonconfiguration file common.php), they will also be ignored as if they were in the same file. The reasoning behindthis is simple. A package is an indivisible set of files and classes that a user will include in their code. Nameconflicts must be avoided to allow successful execution.

This function also plays the all-important role of calling phpDocumentor_IntermediateParser::addElementToPage()in order to add processed elements to their pages for Conversion.

Class Publisher [line 38]

a class for handling the publishing of data

Page 192 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 240: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Version $Id: Publisher.inc,v 1.11.2.1 2003/06/03 05:44:52 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]> Author Kellin < mailto:[email protected]>

Publisher::$popEvent

array = array() [line 51]

Publisher::$pushEvent

array = array() [line 50]

Publisher::$subscriber

mixed = array() [line 46]

Array of references objects that have Subscribed to this publisher

Publisher::$tokens

array = array() [line 48]

function Publisher::publishEvent($event, $data) [line 70]Function Parameters:

integer $event see Parser.inc PARSER_EVENT_* constants mixed $data anything the subscribed event handler is expecting

function Publisher::subscribe($event, &$object) [line 61]Function Parameters:

integer $event see Parser.inc PARSER_EVENT_* constants class $object any class that has a HandleEvent() method likephpDocumentor_IntermediateParser::HandleEvent() or Classes::HandleEvent()

Adds a subscriber to the $subscriber array(). if $event is '*', the publisher will use $object as the default event handler

Page 193 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 241: PhpDocumentor 1.2.2 Manual

DescHTML.incAll abstract representations of html tags in DocBlocks are handled by the classes in

this file Before version 1.2, phpDocumentor simply passed html to converters, without much

thought, except the adv_htmlentities() function was provided along with a list of allowed html. That list is no longer used, in favor of these classes.

The PDF Converter output looked wretched in version 1.1.0 because line breaks inDocBlocks were honored. This meant that output often had just a few words on every otherline! To fix this problem, DocBlock descriptions are now parsed using the ParserDescParser,and split into paragraphs. In addition, html in DocBlocks are parsed into these objects toallow for easy conversion in destination converters. This design also allows different conversion for different templates within a converter, which separates design from logicalmost 100%

Package phpDocumentor Sub-Package DescHTML Since 1.2

Class parserB [line 86]

Used for <b> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

Page 194 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 242: PhpDocumentor 1.2.2 Manual

function parserB::Convert(&$c) [line 92]Function Parameters:

Converter &$c

Uses Converter::Bolden()

Class parserBr [line 171]

Used for <br> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserBr::Convert(&$c) [line 177]Function Parameters:

Converter &$c

Uses Converter::Br()

Page 195 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 243: PhpDocumentor 1.2.2 Manual

Class parserCode [line 46]

Used for <code> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserCode::Convert(&$c) [line 52]Function Parameters:

Converter &$c

Uses Converter::ProgramExample()

Class parserDescVar [line 120]

Used for <var> in a description

Page 196 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 244: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserDescVar::Convert(&$c) [line 126]Function Parameters:

Converter &$c

Uses Converter::Varize()

Class parserI [line 103]

Used for <i> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserI::Convert(&$c) [line 109]Function Parameters:

Page 197 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 245: PhpDocumentor 1.2.2 Manual

Converter &$c

Uses Converter::Italicize()

Class parserKbd [line 154]

Used for <kbd> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserKbd::Convert(&$c) [line 160]Function Parameters:

Converter &$c

Uses Converter::Kbdize()

Page 198 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 246: PhpDocumentor 1.2.2 Manual

Class parserList [line 188]

Used for lists <ol> and <ul>

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

parserList::$items

integer = 0 [line 193]

parserList::$numbered

boolean = [line 191]

Constructor function parserList::parserList($numbered) [line 197]Function Parameters:

integer $numbered

function parserList::addItem($item) [line 203]Function Parameters:

parserStringWithInlineTags $item

function parserList::addList($list) [line 209]Function Parameters:

parserList $list

function parserList::Convert(&$c) [line 219]

Page 199 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 247: PhpDocumentor 1.2.2 Manual

Function Parameters:

Converter &$c

Uses Converter::EncloseList() - enclose the list Uses Converter::ListItem() - enclose each item of the list

Class parserPre [line 69]

Used for <pre> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserPre::Convert(&$c) [line 75]Function Parameters:

Converter &$c

Uses Converter::PreserveWhiteSpace()

Page 200 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 248: PhpDocumentor 1.2.2 Manual

Class parserSamp [line 137]

Used for <samp> in a description

Package phpDocumentor Sub-Package DescHTML Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

function parserSamp::Convert(&$c) [line 143]Function Parameters:

Converter &$c

Uses Converter::Sampize()

Page 201 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 249: PhpDocumentor 1.2.2 Manual

DocBlockTags.incAll abstract representations of DocBlock tags are defined

by the classes in this file

Package phpDocumentor Sub-Package DocBlockTags Since separate file since version 1.2

Class parserAccessTag [line 184]

This class represents the @access tag

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @access

parserAccessTag::$isvalid

boolean = false [line 197]

set to true if the returned tag has a value type of private, protected or public, false otherwise

Page 202 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 250: PhpDocumentor 1.2.2 Manual

parserAccessTag::$keyword

string = 'access' [line 190]

tag name

Constructor function parserAccessTag::parserAccessTag($value) [line 205]Function Parameters:

parserStringWithInlineTags $value

checks $value to make sure it is private, protected or public, otherwise it's not a valid @access tag

See parserAccessTag::$isvalid

string function parserAccessTag::Convert(&$converter) [line 237]Function Parameters:

Converter &$converter

See parserStringWithInlineTags::Convert()

string function parserAccessTag::getString() [line 246]No inline tags are possible, returns 'public', 'protected' or 'private'

Class parserExampleTag

Page 203 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 251: PhpDocumentor 1.2.2 Manual

[line 786]represents "@example"

The example tag

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @example

parserExampleTag::$keyword

string = 'example' [line 792]

always "example"

Constructor function parserExampleTag::parserExampleTag($value, $current_path) [line 803]Function Parameters:

parserStringWithInlineTags $value string $current_path path of file containing this @example tag

Reads and parses the example file indicated The example tag takes one parameter: the full path to a php file that should be parsed

and included as an example.

Uses phpDocumentorTWordParser::getFileSource() - uses to parse an example and retrieve all tokens by line number

function parserExampleTag::ConvertSource(&$c) [line 949]

Page 204 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 252: PhpDocumentor 1.2.2 Manual

Function Parameters:

Converter &$c

Usedby parserFileSourceTag::Convert() - generate source code and write it out Uses parserFileSourceTag::writeSource() Uses phpDocumentor_HighlightParser - highlights source code

function parserExampleTag::getSourceLink(&$c) [line 977]Function Parameters:

Converter &$c

Retrieve a converter-specific link to the example

Uses Converter::getExampleLink() - retrieve the link to the example

Class parserFileSourceTag [line 697]

represents "@filesource" Use this to create a link to a highlighted phpxref-style source file listing

Package phpDocumentor

Page 205 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 253: PhpDocumentor 1.2.2 Manual

Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @filesource

parserFileSourceTag::$keyword

string = 'filesource' [line 703]

Always "filesource"

parserFileSourceTag::$path

string = [line 707]

parserFileSourceTag::$source

array = [line 705]

Constructor function parserFileSourceTag::parserFileSourceTag($filepath, $value) [line 719]Function Parameters:

string $filepath array $value output from phpDocumentorTWordParser::getFileSource()

Set $source to $value, and set up path

string function parserFileSourceTag::Convert(&$c) [line 732]Function Parameters:

Converter &$c

Return a link to the highlighted source and generate the source

Uses parserFileSourceTag::ConvertSource() - generate source code and write it out

Page 206 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 254: PhpDocumentor 1.2.2 Manual

function parserFileSourceTag::ConvertSource(&$c) [line 747]Function Parameters:

Converter &$c

Usedby parserFileSourceTag::Convert() - generate source code and write it out Uses parserFileSourceTag::writeSource() Uses phpDocumentor_HighlightParser - highlights source code

output function parserFileSourceTag::getSourceLink(&$c) [line 772]Function Parameters:

Converter &$c

Uses Converter::getSourceLink()

function parserFileSourceTag::writeSource(&$c, $source) [line 762]Function Parameters:

Converter &$c string $source highlighted source code

Usedby parserExampleTag::ConvertSource() Usedby parserFileSourceTag::ConvertSource() Uses Converter::writeSource() - export highlighted file source

Page 207 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 255: PhpDocumentor 1.2.2 Manual

Class parserLicenseTag [line 505]

represents "@license" Link to a license, instead of including lines and lines of license information in every file

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @license

parserLicenseTag::$keyword

string = 'license' [line 511]

always 'license'

Constructor function parserLicenseTag::parserLicenseTag($name, $link) [line 517]Function Parameters:

string $link

URL to link to

Page 208 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 256: PhpDocumentor 1.2.2 Manual

Class parserLinkTag [line 406]

represents "@link"

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Tutorial @link

parserLinkTag::$keyword

string = 'link' [line 412]

always 'link'

Constructor function parserLinkTag::parserLinkTag($link) [line 418]Function Parameters:

string $link

URL to link to

Class parserNameTag [line 150]

This class represents the @name tag

Page 209 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 257: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @name

parserNameTag::$keyword

string = 'name' [line 156]

tag name

Constructor function parserNameTag::parserNameTag($name, $value) [line 162]Function Parameters:

string $name not used string $value name

string function parserNameTag::Convert(&$c) [line 172]Function Parameters:

Converter &$c

See parserStringWithInlineTags::Convert()

Class parserParamTag [line 373]

Page 210 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 258: PhpDocumentor 1.2.2 Manual

Represents "@param"

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @param

parserParamTag::$keyword

string = 'param' [line 379]

always 'param'

Class parserReturnTag [line 261]

represents "@return"

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Tutorial @return

parserReturnTag::$converted_returnType

Page 211 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 259: PhpDocumentor 1.2.2 Manual

mixed = false [line 291]

contains a link to the documentation for a class passed as a type in @return, @var or@param Example:

1 class myclass2 {3 ...4 }5

In this case, $converted_returnType will contain a link to myclass instead of the string 'myclass'

Var either the same as $returnType or a link to the docs for a class See parserReturnTag::$returnType

parserReturnTag::$keyword

string = 'return' [line 267]

always 'return'

parserReturnTag::$returnType

mixed = 'void' [line 271]

the type a function returns

Constructor function parserReturnTag::parserReturnTag($returnType, $value) [line 297]Function Parameters:

string $returnType parserStringWithInlineTags $value

string function parserReturnTag::Convert(&$converter) [line 309]Function Parameters:

Page 212 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 260: PhpDocumentor 1.2.2 Manual

Converter &$converter

sets up $converted_returnType

See parserStringWithInlineTags::Convert(), parserReturnTag::$converted_returnType

Class parserSeeTag [line 442]

represents "@see"

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Tutorial @see

parserSeeTag::$keyword

string = 'see' [line 448]

always 'see'

Constructor function parserSeeTag::parserSeeTag($name) [line 453]Function Parameters:

string $name element to link to

Page 213 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 261: PhpDocumentor 1.2.2 Manual

function parserSeeTag::Convert(&$converter) [line 462]Function Parameters:

Converter &$converter

See parserStringWithInlineTags::Convert()

Class parserStaticvarTag [line 388]

Represents "@staticvar"

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Tutorial @staticvar

parserStaticvarTag::$keyword

string = 'staticvar' [line 394]

always 'staticvar'

Page 214 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 262: PhpDocumentor 1.2.2 Manual

Class parserTag [line 37]

used to represent standard tags like @access, etc. This class is aware of inline tags, and will automatically handle them using inherited

functions

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserTag::$keyword

string = '' [line 49]

tag name (see, access, etc.)

parserTag::$type

string = '_tag' [line 44]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah' always '_tag'

Constructor function parserTag::parserTag($keyword, $value, [$noparse = false]) [line 59]Function Parameters:

string $keyword tag name parserStringWithInlineTags $value boolean $noparse whether to parse the $value for html tags

Page 215 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 263: PhpDocumentor 1.2.2 Manual

Set up the tag 1 function parserTag($keyword, $value, $noparse = false)

2 {3 $this-> keyword = $keyword;4 if (!$noparse)5 {6 $parser = new parserDescParser;7 $parser-> subscribe('*',$this);8 $parser-> parse($value-> value,true,'parserstringwithinlinetags');9 } else $this-> value = $value;10 }

function parserTag::Convert(&$converter) [line 74]Function Parameters:

Converter &$converter

See Converter

string function parserTag::getString() [line 130]

See parserStringWithInlineTags::getString()

function parserTag::HandleEvent($a, $desc) [line 121]Function Parameters:

integer $a not used array $desc array of parserStringWithInlineTags representing paragraphs in the tagdescription

Called by the parserDescParser when processing a description.

Page 216 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 264: PhpDocumentor 1.2.2 Manual

See parserTag::parserTag()

Class parserTutorialTag [line 654]

represents "@tutorial" This is exactly like @see except that it only links to tutorials

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Since 1.2 Tutorial @tutorial Tutorial phpDocumentor Tutorials

parserTutorialTag::$keyword

string = 'tutorial' [line 660]

Always "tutorial"

function parserTutorialTag::Convert(&$converter) [line 665]Function Parameters:

Converter &$converter

Page 217 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 265: PhpDocumentor 1.2.2 Manual

See parserStringWithInlineTags::Convert()

Class parserUsedByTag [line 609]

This is a virtual tag, it is created by @uses to cross-reference the used element This is exactly like @uses.

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Since 1.2

parserUsedByTag::$keyword

string = 'usedby' [line 615]

Always "usedby"

Constructor function parserUsedByTag::parserUsedByTag($link, $description) [line 623]Function Parameters:

abstractLink $link link of element that uses this element string $description description of how the element is used

string function parserUsedByTag::Convert(&$c) [line 633]Function Parameters:

Page 218 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 266: PhpDocumentor 1.2.2 Manual

Converter &$c

Class parserUsesTag [line 539]

represents "@uses" This is exactly like @see except that the element used has a @useby link to this element

added to its docblock

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Since 1.2 Tutorial @uses

parserUsesTag::$keyword

string = 'uses' [line 545]

Always "uses"

Constructor function parserUsesTag::parserUsesTag($seeel, $description) [line 553]Function Parameters:

string $seeel element to link to parserStringWithInlineTags $description description of how the element is used

string function parserUsesTag::Convert(&$c) [line 568]

Page 219 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 267: PhpDocumentor 1.2.2 Manual

Function Parameters:

Converter &$c

Return a link to documentation for other element, and description of how it is used Works exactly like parent::Convert() except that it also includes a description of how the

element used is used.

parserStringWithInlineTags function parserUsesTag::getDescription() [line 595]Get the description of how the element used is being used.

Usedby phpDocumentor_IntermediateParser::addUses() - used to initialize $uses

Class parserVarTag [line 353]

represents "@var"

Package phpDocumentor Sub-Package DocBlockTags Version $Id: DocBlockTags.inc,v 1.22.2.11 2003/07/26 05:55:26 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Tutorial @var

parserVarTag::$keyword

Page 220 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 268: PhpDocumentor 1.2.2 Manual

string = 'var' [line 359]

always 'var'

parserVarTag::$returnType

string = 'mixed' [line 364]

the type a var has

Page 221 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 269: PhpDocumentor 1.2.2 Manual

Errors.inc

Package phpDocumentor Sub-Package Errors Version $Id: Errors.inc,v 1.70.2.7 2003/07/30 00:39:39 CelloG Exp $ Author Gregory Beaver < mailto:[email protected]>

$phpDocumentor_errors

ErrorTracker = new ErrorTracker [line 720]

Name $phpDocumentor_errors

$phpDocumentor_error_descrip

array = array( PDERROR_UNTERMINATED_INLINE_TAG => 'Inline tag {@%s} in tag %s is unterminated,"%s"', PDERROR_CLASS_EXISTS => 'Class %s already exists in package "%s"', PDERROR_CONVERTER_NOT_FOUND => 'Converter %s specified by --output command-lineoption is not a class', PDERROR_NO_CONVERTERS => 'No Converters have been specified by --output command-lineoption', PDERROR_ACCESS_WRONG_PARAM => '@access was passed neither "public" nor"private." Was passed: "%s"', PDERROR_MULTIPLE_ACCESS_TAGS => 'DocBlock has multiple @access tags, illegal. ignoringadditional tag "@access %s"', PDERROR_MULTIPLE_RETURN_TAGS => 'DocBlock has multiple @return tags, illegal. ignoringadditional tag "@return %s %s"', PDERROR_MULTIPLE_VAR_TAGS => 'DocBlock has multiple @var tags, illegal. ignoring additionaltag "@var %s %s"', PDERROR_MULTIPLE_PACKAGE_TAGS => 'DocBlock has multiple @package tags, illegal.ignoring additional tag "@package %s"', PDERROR_MULTIPLE_SUBPACKAGE_TAGS => 'DocBlock has multiple @subpackage tags,illegal. ignoring additional tag "@subpackage %s"', PDERROR_ILLEGAL_PACKAGENAME => '@%s tag has illegal %s name "%s"', PDERROR_OVERRIDDEN_PACKAGE_TAGS => '%s %s\'s DocBlock has @package tag, illegal.ignoring tag "@package %s"', PDERROR_OVERRIDDEN_SUBPACKAGE_TAGS => '"%s" %s\'s DocBlock has@subpackage tags, illegal. ignoring tag "@subpackage %s"', PDERROR_CLASS_CONFLICT => 'class "%s" has multiple declarations in package %s,in file %s and file %s, documentation will have output errors!', PDERROR_MULTIPLE_NAME_TAGS => 'DocBlock has multiple @name tags, illegal. ignoring

Page 222 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 270: PhpDocumentor 1.2.2 Manual

additional tag "@name %s"', PDERROR_PACKAGEOUTPUT_DELETES_PARENT_FILE => '-po (packageoutput) option deletesparent file "%s" containing class "%s."'."\n".' Try using --defaultpackagename (-dn) %s to include the parent file in the same package as the class', PDERROR_GLOBAL_NOT_FOUND => 'global variable %s specified in @global tag was neverfound', PDERROR_MULTIPLE_GLOBAL_TAGS => '@global define tag already used for global variable"%s", ignoring @global %s', PDERROR_MALFORMED_GLOBAL_TAG => 'incorrect @global syntax. Should be @global vartype$varname or @global vartype description', PDERROR_UNKNOWN_COMMANDLINE => 'Unknown command-line option "%s"encountered, use phpdoc -h for help', PDERROR_NEED_WHITESPACE => 'phpDocumentor programmer error - wordparser whitespaceset to false in handleDocBlock, notify developers. You should never see this error', PDERROR_SOURCE_TAG_FUNCTION_NOT_FOUND => '{@source} tag used in a docblock thatisn\'t preceding a function', PDERROR_UNMATCHED_LIST_TAG => 'unmatched ol or ul tag in DocBlock, parsing will beincorrect', PDERROR_CANT_NEST_IN_B => 'Can\'t nest a code, pre, ul, or ol tag in a b tag in phpDocumentorDocBlock (%s tag nested)', PDERROR_UNMATCHED_TUTORIAL_TAG => 'While parsing extended documentation,"%s" tag was matched with "%s" endtag, missing endtag'."\ntagcontents:\"%s\"", PDERROR_CANT_HAVE_INLINE_IN_TAGNAME => 'Can\'t have an inline tag inside a packagepage XML tag!', PDERROR_TUTORIAL_IS_OWN_CHILD => 'Tutorial %s lists itself as its own child in %s, illegal', PDERROR_TUTORIAL_IS_OWN_GRANDPA => 'Tutorial %s\'s child %s lists %s as its child in %s,illegal', PDERROR_PDFFUNCTION_NO_FUNC => 'Invalid pdffunction syntax: "<pdffunction:/>", should be "<pdffunction:functionname [arg="value"...]/>"', PDERROR_PDF_TEMPVAR_DOESNT_EXIST => '<pdffunction:%s arg=%s /> called buttemporary variable "%s" doesn\'t exist', PDERROR_UNTERMINATED_ATTRIB => 'Tutorial tag %s attribute %s is unterminated, currentvalue "%s"', PDERROR_NO_CONVERTER_HANDLER => 'Handler for element of type "%s" called,but %s is not a method of %s', PDERROR_INLINETAG_IN_SEE => 'Inline tags are not allowed in a @see tag', PDERROR_ID_MUST_BE_INLINE => '<%s id="%s"> must be <%s id="{@id%s}">', PDERROR_INTERNAL_NOT_CLOSED => '{@internal was never terminated with }}', PDERROR_CONVERTER_OVR_GFCT => 'Converter "%s" must overridegetFormattedClassTrees() but doesn\'t', PDERROR_TEXT_OUTSIDE_LI => 'Text cannot be outside of li tag in a DocBlock list, parsing will beincorrect', PDERROR_UNCLOSED_TAG => 'Unclosed %s tag in DocBlock, parsing will be incorrect', PDERROR_TAG_NOT_HANDLED => '"%s" tag is not available in PHP versions less than4.3.0, tag ignored', PDERROR_MALFORMED_TAG => '"%s" tag was used without any parameters, illegal', PDERROR_MULTIPLE_CATEGORY_TAGS => 'package has multiple @category tags, ignoring"@category %s"', PDERROR_TEMPLATEDIR_DOESNT_EXIST => 'template directory "%s" does not exist', PDERROR_UNTERMINATED_ENTITY => 'entity &%s is unterminated', PDERROR_FUNCTION_HAS_NONAME => 'function has no name (PHP error - test your file beforeparsing!)', ) [line 381]

Error messages for phpDocumentor parser errors

Page 223 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 271: PhpDocumentor 1.2.2 Manual

Name $phpDocumentor_error_descrip

$phpDocumentor_warning_descrip

array = array( PDERROR_MULTIPLE_PARENT => 'Class %s has multiple possible parents, package inheritanceaborted', PDERROR_PARENT_NOT_FOUND => 'Class %s parent %s not found', PDERROR_INHERITANCE_CONFLICT => 'Class %s in file %s has multiple possible parents named%s. Cannot resolve name conflict,'."\n".' try ignoring a file that contains the conflicting parentclass', PDERROR_UNKNOWN_TAG => 'Unknown tag "@%s" used', PDERROR_IGNORE_TAG_IGNORED => '@ignore tag used for %s element "%s" will beignored', PDERROR_ELEMENT_IGNORED => "\n".'duplicate %s element "%s" in file%s will be ignored.'."\n".'Use an @ignore tag on the original if you want this case to bedocumented.', PDERROR_PARSEPRIVATE => "entire page %s ignored because of @accessprivate.\nChoose -pp to enable parsing of private elements", PDERROR_CLASS_PARENT_NOT_FOUND => "class %s in package %s parent not found in@see parent::%s", PDERROR_CLASS_NOT_IN_PACKAGE => "class %s was not found in package %s", PDERROR_DB_TEMPLATE_UNTERMINATED => "docblock template never terminated with/**#@-*/", PDERROR_PDF_METHOD_DOESNT_EXIST => '<pdffunction:%s /> called, but pdf method"%s" doesn\'t exist', PDERROR_TUTORIAL_NOT_FOUND => "tutorial \"%s\" not found, does itexist?", PDERROR_CHILD_TUTORIAL_NOT_FOUND => 'child tutorial "%s" listed in %s notfound in parent package "%s" subpackage "%s"', PDERROR_TUTORIAL_SUBSECTION_NOT_FOUND => 'tutorial %s subsection "%s"doesn\'t exist, but its title was asked for', PDERROR_NO_PACKAGE_TAG => 'no @package tag was used in a DocBlock for %s %s', PDERROR_PRIVATE_ASSUMED => '%s "%s" is assumed to be @access privatebecause its name starts with _, but has no @access tag', PDERROR_EXAMPLE_NOT_FOUND => 'example file "%s" does not exist', PDERROR_SOURCE_TAG_IGNORED => '{@source} can only be used in the long description, notin the short description: "%s"', PDERROR_PACKAGECAT_SET => 'package %s is already in category %s, will now replace withcategory %s', PDERROR_SOURCECODE_IGNORED => 'sourcecode command-line option is ignored for PHPversions < 4.3.0', PDERROR_INHERITDOC_DONT_WORK_HERE => '{@inheritdoc} can only be used in the docblockof a child class', PDERROR_EMPTY_EXAMPLE_TITLE => 'Example file found at "%s" has no title, using"%s"', PDERROR_DOCBLOCK_CONFLICT => 'Page-level DocBlock precedes "%s %s", useanother DocBlock to document the source element', PDERROR_NO_PAGE_LEVELDOCBLOCK => 'File "%s" has no page-level DocBlock,use @package in the first DocBlock to create one', PDERROR_DOCBLOCK_GOES_CLASS => 'DocBlock would be page-level, but precedes class"%s", use another DocBlock to document the file',

Page 224 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 272: PhpDocumentor 1.2.2 Manual

PDERROR_NO_DOCBOOK_ID => 'Tutorial section %s "%s" has no id="{@idsubsection}" tag ({@id} for refentry)', ) [line 340]

Error messages for phpDocumentor parser warnings

Name $phpDocumentor_warning_descrip

function addError($num, $data...) [line 727]Function Parameters:

integer $num error number from Errors.inc string $data... up to 4 string parameters to sprintf() into the error string for error number $num

See ErrorTracker::addError()

function addErrorDie($num, $data...) [line 748]Function Parameters:

integer $num error number from Errors.inc string $data... up to 4 string parameters to sprintf() into the error string for error number $num

like addError() but exits parsing

Global Variable Used ErrorTracker $phpDocumentor_errors: repository for all errors generatedby phpDocumentor See ErrorTracker::addError()

Page 225 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 273: PhpDocumentor 1.2.2 Manual

function addWarning($num, $data...) [line 769]Function Parameters:

integer $num warning number from Errors.inc string $data... up to 4 string parameters to sprintf() into the error string for error number $num

Global Variable Used ErrorTracker $phpDocumentor_errors: repository for all errors generatedby phpDocumentor See ErrorTracker::addWarning()

PDERROR_ACCESS_WRONG_PARAM = 8 [line 57]warning triggered when the arguments to @access are neither public nor private

PDERROR_CANT_HAVE_INLINE_IN_TAGNAME = 36 [line 169]warning triggered when an inline tag is found inside an xml tag name in a package page

PDERROR_CANT_NEST_IN_B = 34 [line 161]warning triggered when another tag is nested in &lt;b&gt; - not allowed in

phpDocumentor

PDERROR_CHILD_TUTORIAL_NOT_FOUND = 40 [line 186]warning triggered when a tutorial's child in the .ini file doesn't exist in the

package and subpackage of the parent

PDERROR_CLASS_CONFLICT = 17 [line 93]warning triggered when classes in the same package have the same name

PDERROR_CLASS_EXISTS = 4 [line 41]warning triggered when inheritance could be from more than one class

PDERROR_CLASS_NOT_IN_PACKAGE = 30 [line 145]warning triggered when a getClassByPackage is called and can't find the class

Page 226 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 274: PhpDocumentor 1.2.2 Manual

PDERROR_CLASS_PARENT_NOT_FOUND = 29 [line 141]warning triggered when an entire page is ignored because of @access private

PDERROR_CONVERTER_NOT_FOUND = 6 [line 49]warning triggered when a converter is passed to

phpDocumentor_IntermediateParser::addConverter() that is not a class

PDERROR_CONVERTER_OVR_GFCT = 54 [line 250]warning triggered when a child converter doesn't override getFormattedClassTrees()

PDERROR_DB_TEMPLATE_UNTERMINATED = 32 [line 153]warning triggered when a docblock template is never turned off with /**#@-* / (no

space)

PDERROR_DOCBLOCK_CONFLICT = 67 [line 320]warning triggered by a page-level docblock preceding a source element

1 <?php2 /**3 * Page-level DocBlock4 * @package pagepackage5 ***/6 include 'file.php';

PDERROR_DOCBLOCK_GOES_CLASS = 69 [line 329]warning triggered when the first docblock in a file with a @package tag precedes a

class. In this case, the class gets the docblock.

PDERROR_ELEMENT_IGNORED = 25 [line 125]warning triggered when a duplicate element is encountered that will be ignored by the

documentor

PDERROR_EMPTY_EXAMPLE_TITLE = 63 [line 288]warning triggered by @example path/to/example with no title

PDERROR_EXAMPLE_NOT_FOUND = 48 [line 223]warning triggered when an example's path from @example /path/to/example.php

is not found

PDERROR_FUNCTION_HAS_NONAME = 66 [line 307]warning triggered by a function with no name

Page 227 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 275: PhpDocumentor 1.2.2 Manual

function ($params) { } triggers this error

PDERROR_GLOBAL_NOT_FOUND = 21 [line 109]warning triggered when there are multiple @name tags in a docblock

PDERROR_ID_MUST_BE_INLINE = 51 [line 238]warning triggered when an id attribute in a tutorial docbook tag is not

an {@id} inline tag

PDERROR_IGNORE_TAG_IGNORED = 24 [line 121]warning triggered when an @ignore tag is used in a DocBlock preceding a method,

variable, include, or global variable

PDERROR_ILLEGAL_PACKAGENAME = 14 [line 81]warning triggered when the package or subpackage name is illegal

PDERROR_INHERITANCE_CONFLICT = 5 [line 45]warning triggered when inheritance could be from more than one class

PDERROR_INHERITDOC_DONT_WORK_HERE = 62 [line 284]warning triggered by {@inheritdoc} in a non-inheritable situation

PDERROR_INLINETAG_IN_SEE = 50 [line 233]warning triggered when an example's path from @example /path/to/example.php

is not found

PDERROR_INTERNAL_NOT_CLOSED = 52 [line 242]warning triggered when an {@internal}} tag is not closed

PDERROR_MALFORMED_GLOBAL_TAG = 23 [line 117]warning triggered when there are multiple @name tags in a docblock

PDERROR_MALFORMED_TAG = 60 [line 276]warning triggered by an empty tag

Page 228 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 276: PhpDocumentor 1.2.2 Manual

PDERROR_MULTIPLE_ACCESS_TAGS = 9 [line 61]warning triggered when there are multiple @access tags in a docblock

PDERROR_MULTIPLE_CATEGORY_TAGS = 61 [line 280]warning triggered by more than 1 @category tag

PDERROR_MULTIPLE_GLOBAL_TAGS = 22 [line 113]warning triggered when there are multiple @name tags in a docblock

PDERROR_MULTIPLE_NAME_TAGS = 19 [line 101]warning triggered when there are multiple @name tags in a docblock

PDERROR_MULTIPLE_PACKAGE_TAGS = 12 [line 73]warning triggered when there are multiple @package tags in a docblock

PDERROR_MULTIPLE_PARENT = 1 [line 29]warning triggered when inheritance could be from more than one class

PDERROR_MULTIPLE_RETURN_TAGS = 10 [line 65]warning triggered when there are multiple @return tags in a docblock

PDERROR_MULTIPLE_SUBPACKAGE_TAGS = 13 [line 77]warning triggered when there are multiple @subpackage tags in a docblock

PDERROR_MULTIPLE_VAR_TAGS = 11 [line 69]warning triggered when there are multiple @var tags in a docblock

PDERROR_NEED_WHITESPACE = 28 [line 137]warning triggered when an entire page is ignored because of @access private

PDERROR_NO_CONVERTERS = 7 [line 53]warning triggered when a converter is passed to

phpDocumentor_IntermediateParser::addConverter() that is not a class

PDERROR_NO_CONVERTER_HANDLER = 49 [line 228]warning triggered when an example's path from @example /path/to/example.php

is not found

Page 229 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 277: PhpDocumentor 1.2.2 Manual

PDERROR_NO_DOCBOOK_ID = 70 [line 333]warning triggered in tutorial parsing if there is a missing {@id} inline tag

PDERROR_NO_PACKAGE_TAG = 46 [line 213]warning triggered when no @package tag is used in a page-level or class-level

DocBlock

PDERROR_NO_PAGE_LEVELDOCBLOCK = 68 [line 324]warning triggered when a file does not contain a page-level docblock

PDERROR_OVERRIDDEN_PACKAGE_TAGS = 15 [line 85]warning triggered when there a @package tag is used in a function, define, method, var

or include

PDERROR_OVERRIDDEN_SUBPACKAGE_TAGS = 16 [line 89]warning triggered when there a @subpackage tag is used in a function, define, method,

var or include

PDERROR_PACKAGECAT_SET = 55 [line 255]warning triggered when a package is already associated with a category, and

a new association is found

PDERROR_PACKAGEOUTPUT_DELETES_PARENT_FILE = 20 [line 105]warning triggered when there are multiple @name tags in a docblock

PDERROR_PARENT_NOT_FOUND = 2 [line 33]warning triggered when parent class doesn't exist

PDERROR_PARSEPRIVATE = 26 [line 129]warning triggered when an entire page is ignored because of @access private

PDERROR_PDFFUNCTION_NO_FUNC = 41 [line 191]warning triggered when a <pdffunction:funcname /> tag is used in the PDF

Converter and no funcname is present (<pdffunction: />)

PDERROR_PDF_METHOD_DOESNT_EXIST = 42 [line 196]warning triggered when a <pdffunction:funcname /> tag is used in the PDF

Converter and funcname is not a Cezpdf method

Page 230 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 278: PhpDocumentor 1.2.2 Manual

PDERROR_PDF_TEMPVAR_DOESNT_EXIST = 43 [line 201]warning triggered when a <pdffunction:funcname arg=$tempvar/> tag is used in

the PDF Converter and "tempvar" is not set from the return of a previous pdffunction

tag

PDERROR_PRIVATE_ASSUMED = 47 [line 218]warning triggered when no @access private tag is used in a global variable/method/var

with _ as first char in name and --pear was specified

PDERROR_SOURCECODE_IGNORED = 59 [line 272]warning triggered by sourcecode="on", if PHP < 4.3.0

PDERROR_SOURCE_TAG_FUNCTION_NOT_FOUND = 31 [line 149]warning triggered when a { @source } inline tag is used in a docblock not preceding a

function

PDERROR_SOURCE_TAG_IGNORED = 53 [line 246]warning triggered when an {@source} tag is found in a short description

PDERROR_TAG_NOT_HANDLED = 58 [line 268]warning triggered by @filesource, if PHP < 4.3.0

PDERROR_TEMPLATEDIR_DOESNT_EXIST = 64 [line 292]warning triggered by non-existent template directory

PDERROR_TEXT_OUTSIDE_LI = 56 [line 260]warning triggered when text in a docblock list is not contained in

an li>> opening tag

PDERROR_TUTORIAL_IS_OWN_CHILD = 38 [line 177]warning triggered when a tutorial lists itself as a child tutorial

PDERROR_TUTORIAL_IS_OWN_GRANDPA = 39 [line 181]warning triggered when a tutorial's child lists the parent tutorial as a child tutorial

Page 231 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 279: PhpDocumentor 1.2.2 Manual

PDERROR_TUTORIAL_NOT_FOUND = 37 [line 173]warning triggered when a tutorial is referenced via @tutorial/{ @tutorial} and is not

found

PDERROR_TUTORIAL_SUBSECTION_NOT_FOUND = 44 [line 205]warning triggered when a subsection's title is asked for, but the subsection is not

found

PDERROR_UNCLOSED_TAG = 57 [line 264]warning triggered when a DocBlock html tag is unclosed

PDERROR_UNKNOWN_COMMANDLINE = 27 [line 133]warning triggered when an entire page is ignored because of @access private

PDERROR_UNKNOWN_TAG = 18 [line 97]warning triggered when classes in the same package have the same name

PDERROR_UNMATCHED_LIST_TAG = 33 [line 157]warning triggered when a docblock has an unmatched &lt;ol&gt; or

&lt;ul&gt;

PDERROR_UNMATCHED_TUTORIAL_TAG = 35 [line 165]warning triggered when a docbook tag is not properly matched

PDERROR_UNTERMINATED_ATTRIB = 45 [line 209]warning triggered when a subsection's title is asked for, but the subsection is not

found

PDERROR_UNTERMINATED_ENTITY = 65 [line 296]warning triggered by an unterminated entity in a tutorial

PDERROR_UNTERMINATED_INLINE_TAG = 3 [line 37]warning triggered when an {@inline tag} is not terminated (no } before the * / ending

the comment)

Page 232 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 280: PhpDocumentor 1.2.2 Manual

Class ErrorTracker [line 545]

contains all the errors/warnings

Package phpDocumentor Sub-Package Errors See ErrorTracker::$errors, ErrorTracker::$warnings

ErrorTracker::$curfile

string = '' [line 560]

ErrorTracker::$errors

array = array() [line 551]

array of RecordErrors

ErrorTracker::$lasterror

integer|false = false [line 570]

index in $errors of last error triggered

ErrorTracker::$lastwarning

integer|false = false [line 576]

index in $warnings of last warning triggered

ErrorTracker::$linenum

integer = 0 [line 564]

ErrorTracker::$warnings

array = array() [line 556]

array of RecordWarnings

function ErrorTracker::addError($num, $data...) [line 626]Function Parameters:

Page 233 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 281: PhpDocumentor 1.2.2 Manual

integer $num error number from Errors.inc string $data... up to 4 string parameters to sprintf() into the error string for error number $num

add a new error to the $errors array

function ErrorTracker::addErrorReturn($num, $data...) [line 645]Function Parameters:

integer $num error number from Errors.inc string $data... up to 4 string parameters to sprintf() into the error string for error number $num

add a new error to the $errors array and returns the error string

function ErrorTracker::addWarning($num, $data...) [line 607]Function Parameters:

integer $num error number from Errors.inc string $data... up to 4 string parameters to sprintf() into the error string for error number $num

add a new warning to the $warnings array

function ErrorTracker::handleEvent($num, $data) [line 583]Function Parameters:

integer $num parser-passed event (see PHPDOCUMENTOR_EVENT_NEWLINENUM,PHPDOCUMENTOR_EVENT_NEWFILE) mixed $data either a line number if $num is PHPDOCUMENTOR_EVENT_NEWLINENUM or afile name if $num is PHPDOCUMENTOR_EVENT_NEWFILE

This function subscribes to two events in the Parser in order to keep track of linenumber information and file name.

array function ErrorTracker::returnErrors() [line 673]

Page 234 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 282: PhpDocumentor 1.2.2 Manual

Get sorted array of all non-fatal errors in parsing/conversion

string function ErrorTracker::returnLastError() [line 701]Get the error message of the last error

string function ErrorTracker::returnLastWarning() [line 710]Get the warning message of the last warning

array function ErrorTracker::returnWarnings() [line 663]Get sorted array of all warnings in parsing/conversion

Class RecordError [line 511]

encapsulates error information

Package phpDocumentor Sub-Package Errors

RecordError::$type

string = 'phpDocumentor_error_descrip' [line 517]

name of global variable that descriptors for this warning/error is kept

function RecordError::output([$string = false]) [line 522]prints the error

Class RecordWarning

Page 235 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 283: PhpDocumentor 1.2.2 Manual

[line 434]encapsulates warning information

Package phpDocumentor Sub-Package Errors

RecordWarning::$data

string = [line 455]

error string

RecordWarning::$file

string = false [line 445]

file this error occurred in

RecordWarning::$linenum

integer = [line 450]

line number of the file this error occurred in

RecordWarning::$num

string = [line 461]

error number

See Errors.inc

RecordWarning::$type

string = 'phpDocumentor_warning_descrip' [line 440]

name of global variable that descriptors for this warning/error is kept

Page 236 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 284: PhpDocumentor 1.2.2 Manual

Constructor function RecordWarning::RecordWarning($file, $linenum, $num, $data...) [line 468]Function Parameters:

string $file filename this error occurred in ($file) integer $linenum line number this error occurred on ($linenum) integer $num Error number defined in Errors.inc string $data... variable number of strings, up to 4, to sprintf based on the error number

function RecordWarning::output([$string = false]) [line 489]prints the warning

Page 237 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 285: PhpDocumentor 1.2.2 Manual

InlineTags.incAll abstract representations of inline tags are in this file

Package phpDocumentor Sub-Package InlineTags Version $Id: InlineTags.inc,v 1.21.2.5 2003/08/13 19:27:01 CelloG Exp $ Since separate file since version 1.2

Class parserIdInlineTag [line 488]

Represents the inline {@id} tag for tutorials

Package phpDocumentor Sub-Package InlineTags Version $Revision: 1.21.2.5 $ Author Greg Beaver < mailto:[email protected]> Tutorial inline {@id}

parserIdInlineTag::$category

string = 'default' [line 504]

category of the {@id}

parserIdInlineTag::$id

Page 238 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 286: PhpDocumentor 1.2.2 Manual

string = [line 519]

section/subsection name

parserIdInlineTag::$inlinetype

string = 'id' [line 494]

always 'id'

parserIdInlineTag::$package

string = 'default' [line 499]

package of the {@id}

parserIdInlineTag::$subpackage

string = '' [line 509]

subpackage of the {@id}

parserIdInlineTag::$tutorial

string = [line 514]

full name of the tutorial

Constructor function parserIdInlineTag::parserIdInlineTag($category, $package, $subpackage, $tutorial, [$id =false]) [line 528]

Function Parameters:

string $category package name string $package subpackage name string $subpackage tutorial name string $tutorial section/subsection name string $id category name

function parserIdInlineTag::Convert(&$c) [line 541]Function Parameters:

Page 239 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 287: PhpDocumentor 1.2.2 Manual

Converter &$c

Uses Converter::getTutorialId() - retrieve converter-specific ID

Class parserInheritdocInlineTag [line 460]

Represents the inheritdoc inline tag, used by classes/methods/vars to inherit documentation from the parent class if possible

Package phpDocumentor Sub-Package InlineTags Version $Revision: 1.21.2.5 $ Author Greg Beaver < mailto:[email protected]> Tutorial inline {@inheritdoc}

parserInheritdocInlineTag::$inlinetype

string = 'inheritdoc' [line 466]

always 'inheritdoc'

Constructor function parserInheritdocInlineTag::parserInheritdocInlineTag() [line 471]Does nothing, overrides parent constructor

function parserInheritdocInlineTag::Convert() [line 475]

Page 240 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 288: PhpDocumentor 1.2.2 Manual

Class parserInlineTag [line 37]

Use this element to represent an {@inline tag} like {@link}

Package phpDocumentor Sub-Package InlineTags Tutorial phpDocumentor Inline tags Version $Revision: 1.21.2.5 $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> See parserStringWithInlineTags

parserInlineTag::$inlinetype

string = '' [line 55]

the name of the inline tag (like link)

parserInlineTag::$type

string = 'inlinetag' [line 50]

Element type Type is used by many functions to skip the hassle of

1 if get_class($blah) == 'parserBlah'

always "inlinetag"

Constructor function parserInlineTag::parserInlineTag($type, $value) [line 61]Function Parameters:

string $type tag type (example: link) string $value tag value (example: what to link to)

Page 241 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 289: PhpDocumentor 1.2.2 Manual

string function parserInlineTag::getString() [line 81]

Usedby parserStringWithInlineTags::getString() - removes inline tag length, as it is indeterminate until conversion. See parserStringWithInlineTags::trimmedStrlen() See parserStringWithInlineTags::getString()

integer function parserInlineTag::Strlen() [line 70]

Class parserLinkInlineTag [line 95]

represents inline links

Package phpDocumentor Sub-Package InlineTags Version $Revision: 1.21.2.5 $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Tutorial inline {@link}

parserLinkInlineTag::$linktext

string = '' [line 102]

text to display in the link, can be different from the link for standard links like websites

Page 242 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 290: PhpDocumentor 1.2.2 Manual

Constructor function parserLinkInlineTag::parserLinkInlineTag($link, $text) [line 108]Function Parameters:

string $link stored in $value, see parserBase::$value string $text see $linktext

false|string function parserLinkInlineTag::Convert(&$c) [line 128]Function Parameters:

Converter &$c converter used to change the abstract link into text for display

function parserLinkInlineTag::ConvertPart(&$c, $value) [line 148]

Class parserSourceInlineTag [line 311]

represents inline source tag, used for function/method source

Package phpDocumentor Sub-Package InlineTags Version $Revision: 1.21.2.5 $ Author Greg Beaver < mailto:[email protected]> Tutorial inline {@source}

parserSourceInlineTag::$end

'*'|integer = '*' [line 329]

Last line to display

Page 243 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 291: PhpDocumentor 1.2.2 Manual

Var If '*' then the whole source will be used, otherwise the $start to $end line numberswill be displayed

parserSourceInlineTag::$inlinetype

string = 'source' [line 317]

always 'source'

parserSourceInlineTag::$source

string|array = false [line 335]

tokenized source organized by line numbers for php 4.3.0+, the old {@source} tag used a string

parserSourceInlineTag::$start

integer = 1 [line 323]

First line of source code to display

See parserSourceInlineTag::$end

parserSourceInlineTag::$_class

string|false = [line 338]

Constructor function parserSourceInlineTag::parserSourceInlineTag($value) [line 344]Function Parameters:

string $value format "start [end]" where start and end are line numbers withthe end line number optional

function parserSourceInlineTag::arrayConvert(&$c) [line 410]Function Parameters:

Converter &$c

Page 244 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 292: PhpDocumentor 1.2.2 Manual

Usedby parserSourceInlineTag::Convert() - in PHP 4.3.0+, this method is used to convert Uses phpDocumentor_HighlightParser - Parses the tokenized source

function parserSourceInlineTag::Convert(&$c) [line 400]Function Parameters:

Converter &$c

Uses parserSourceInlineTag::arrayConvert() - in PHP 4.3.0+, this method is used to convert Uses parserSourceInlineTag::stringConvert() - in PHP 4.2.3-, this method is used to convert

function parserSourceInlineTag::getString() [line 371]

Usedby parserStringWithInlineTags::getString() - removes inline tag length, as it is indeterminate until conversion.

function parserSourceInlineTag::setSource($source, [$class = false], 2) [line 381]Function Parameters:

string 2 class name if this is a method string|array $source source code boolean $class in php 4.3.0, if this is a method this will be true

function parserSourceInlineTag::stringConvert(&$c) [line 428]Function Parameters:

Converter &$c

Page 245 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 293: PhpDocumentor 1.2.2 Manual

Usedby parserSourceInlineTag::Convert() - in PHP 4.2.3-, this method is used to convert Deprecated in favor of PHP 4.3.0+ arrayConvert() Uses Converter::unmangle() - remove the extraneous stuff from http://www.php.net/highlight_string

function parserSourceInlineTag::Strlen() [line 366]only used to determine blank lines. {@source} will not be blank,

probably

Class parserTocInlineTag [line 554]

Represents {@toc} for table of contents generation in tutorials

Package phpDocumentor Sub-Package InlineTags Version $Revision: 1.21.2.5 $ Author Greg Beaver < mailto:[email protected]> Tutorial inline {@toc}

parserTocInlineTag::$inlinetype

string = 'toc' [line 560]

always 'toc'

Page 246 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 294: PhpDocumentor 1.2.2 Manual

Constructor function parserTocInlineTag::parserTocInlineTag() [line 579] function parserTocInlineTag::Convert(&$c) [line 620]

Function Parameters:

Converter &$c

Uses Converter::getTutorialId() - retrieve the tutorial ID for Uses Converter::formatTutorialTOC() - passes an array of format:

<pre> array( 'tagname' => string name of tag, 'link' => tutorialLink to the tutorial, 'id' => converter specific tutorial ID from Converter::getTutorialId() 'title' => title of the tutorial) </pre>

and returns the results as the table of contents

function parserTocInlineTag::setPath($path) [line 600]Function Parameters:

string $path

function parserTocInlineTag::setTOC($toc) [line 592]Function Parameters:

array $toc format: array(array('tag' => , 'id' => , 'title' => ),...)

Class parserTutorialInlineTag [line 233]

Page 247 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 295: PhpDocumentor 1.2.2 Manual

Represents inline links to external tutorial documentation

Package phpDocumentor Sub-Package InlineTags Version $Revision: 1.21.2.5 $ Author Greg Beaver < mailto:[email protected]> Tutorial inline {@tutorial}

Constructor function parserTutorialInlineTag::parserTutorialInlineTag($link, $text) [line 239]Function Parameters:

string $link stored in $value, see parserBase::$value string $text see $linktext

mixed function parserTutorialInlineTag::Convert(&$c) [line 249]Function Parameters:

Converter &$c converter used to change the abstract link into text for display

Page 248 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 296: PhpDocumentor 1.2.2 Manual

LinkClasses.incLinking to element documentation is performed by the classes in this file.

abstractLink descendants contain enough information to differentiate every documentable element, and so can be converted to a link string by Converter::returnSee()

Package phpDocumentor Sub-Package Links

Class abstractLink [line 35]

linking classes parent

Package phpDocumentor Sub-Package Links

abstractLink::$category

mixed = '' [line 49]

abstractLink::$fileAlias

mixed = '' [line 42]

phpdoc alias _phpdoc_inc for phpdoc.inc

abstractLink::$name

mixed = '' [line 48]

abstractLink::$package

Page 249 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 297: PhpDocumentor 1.2.2 Manual

mixed = '' [line 50]

abstractLink::$path

mixed = [line 38]

abstractLink::$subpackage

mixed = '' [line 51]

abstractLink::$type

mixed = '' [line 47]

element type linked to. can only be a documentable element

function abstractLink::addLink($path, $fileAlias, $name, $package, $subpackage, [$category = false]) [line 62]Function Parameters:

string $path full path to file containing element string $fileAlias page name, as configured by Parser::parse string $name element name string $package package element is in string $subpackage subpackage element is in string $category optional category that documentation is in

Class classLink [line 122]

class link

Package phpDocumentor Sub-Package Links

Page 250 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 298: PhpDocumentor 1.2.2 Manual

classLink::$type

string = 'class' [line 125]

Class defineLink [line 100]

define link

Package phpDocumentor Sub-Package Links

defineLink::$type

string = 'define' [line 103]

Class functionLink [line 89]

function link

Package phpDocumentor Sub-Package Links

functionLink::$type

Page 251 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 299: PhpDocumentor 1.2.2 Manual

string = 'function' [line 92]

Class globalLink [line 111]

global variable link

Package phpDocumentor Sub-Package Links

globalLink::$type

string = 'global' [line 114]

Class methodLink [line 133]

method link

Package phpDocumentor Sub-Package Links

methodLink::$class

string = '' [line 138]

methodLink::$type

string = 'method' [line 136]

Page 252 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 300: PhpDocumentor 1.2.2 Manual

function methodLink::addLink($class, $path, $fileAlias, $name, $package, $subpackage, [$category = false]) [line148]

Function Parameters:

string $class class name string $path full path to file containing element string $fileAlias page name, as configured by Parser::parse string $name element name string $package package element is in string $subpackage subpackage element is in

Class pageLink [line 78]

procedural page link

Package phpDocumentor Sub-Package Links

pageLink::$type

string = 'page' [line 81]

Class tutorialLink [line 171]

tutorial link

Page 253 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 301: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Sub-Package Links

tutorialLink::$section

mixed = '' [line 175]

tutorialLink::$title

mixed = false [line 176]

tutorialLink::$type

mixed = 'tutorial' [line 174]

function tutorialLink::addLink($section, $path, $name, $package, $subpackage, [$title = false], [$category = false])[line 188]

Function Parameters:

string $section section/subsection name string $path full path to file containing element string $name page name, as configured by Parser::parse string $package element name string $subpackage package element is in string $title subpackage element is in string $category title of tutorial

Class varLink [line 160]

class variable link

Page 254 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 302: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Sub-Package Links

varLink::$type

string = 'var' [line 163]

Page 255 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 303: PhpDocumentor 1.2.2 Manual

ParserData.incParser Data Structures

Package phpDocumentor Sub-Package ParserData Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

Class parserBase [line 509]

Base class for all elements

Package phpDocumentor Sub-Package ParserData Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Abstract Element

parserBase::$type

string = 'base' [line 516]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah' always base

Page 256 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 304: PhpDocumentor 1.2.2 Manual

parserBase::$value

mixed = false [line 522]

set to different things by its descendants

Abstract Element

string function parserBase::getType() [line 527]mixed function parserBase::getValue() [line 543] function parserBase::setValue($value) [line 535]

Function Parameters:

mixed $value set the value of this element

Class parserData [line 269]

Contains an in-memory representation of all documentable elements (parserPage,parserFunction, parserDefine, parserInclude, parserClass, parserMethod, parserVar) and their DocBlocks (parserDocBlock). This class works in coordination with phpDocumentor_IntermediateParser to take output

from Parser::handleEvent() and create indexes, links, and other assorted things (alldocumented in phpDocumentor_IntermediateParser and Converter)

Package phpDocumentor Sub-Package ParserData Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Since 1.0rc1

Page 257 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 305: PhpDocumentor 1.2.2 Manual

Author Greg Beaver < mailto:[email protected]>

parserData::$classelements

array = array() [line 291]

array of parsed class elements

parserData::$clean

boolean = true [line 315]

used by phpDocumentor_IntermediateParser::handleDocBlock() to determine whether a docblock is a page-level docblock or not. $clean is true as long as

only 0 or 1 docblock has been parsed, and no element other than parserPage has beenparsed

parserData::$docblock

mixed = false [line 320]

DocBlock (parserDocBlock) for this page, or false if not set

parserData::$elements

array = array() [line 281]

array of parsed elements

parserData::$links

array = array() [line 307]

array of links descended from abstractLink

See pageLink, defineLink, classLink, functionLink, methodLink, varLink

parserData::$parent

Page 258 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 306: PhpDocumentor 1.2.2 Manual

false|parserPage = false [line 276]

parserPage element that is this parserData's parent, or false if not set.

parserData::$privateclasselements

array = array() [line 301]

array of parsed class elements with @access private

parserData::$privateelements

array = array() [line 286]

array of parsed elements with @access private

parserData::$tutorial

parserTutorial|false = false [line 296]

parserData::$type

string = 'page' [line 334]

Type is used by many functions to skip the hassle of if

1 get_class($blah) == 'parserBlah'

always 'page', used in element indexing and conversion functions found in Converter

function parserData::addElement(&$element) [line 340]Function Parameters:

parserElement &$element add a parsed element to the $elements array, alsosets $clean to false

function parserData::addLink(&$element, [$classorpackage = ''], [$subpackage = '']) [line 399]Function Parameters:

parserElement &$element element to add a new link (descended from abstractLink)to the$links array string $classorpackage classname for elements that are class-based (this may be deprecated in the future, as the classname should be contained within the element. if$element is a page, this parameter is a package name string $subpackage subpackage name for page elements

Page 259 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 307: PhpDocumentor 1.2.2 Manual

function parserData::addTutorial($t, &$c) [line 357]Function Parameters:

parserTutorial $t Converter &$c

function parserData::explicitDocBlock() [line 385]Tells this page that its DocBlock was not implicit

array function parserData::getClasses(&$c) [line 452]Function Parameters:

Converter &$c

returns a list of all classes declared in a file

function parserData::getLink(&$c, [$text = false]) [line 442]string function parserData::getName() [line 468]

Get the output-safe filename (. changed to _)

tutorialLink function parserData::getTutorial() [line 368]If this file has a tutorial associated with it, returns a link to the tutorial.

boolean function parserData::hasExplicitDocBlock() [line 377]If the page-level DocBlock was present in the source, returns true

bool function parserData::isClean() [line 485] function parserData::setDocBlock(&$docblock) [line 494]

Function Parameters:

parserDocBlock &$docblock

See parserDocBlock

Page 260 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 308: PhpDocumentor 1.2.2 Manual

function parserData::setParent(&$parent) [line 477]Function Parameters:

parserPage &$parent parent element of this parsed data

Class parserPage [line 37]

Contains information about a PHP file, used to group procedural elements together.

Package phpDocumentor Sub-Package ParserData Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserPage::$category

string = 'default' [line 68]

parserPage::$file

string = '' [line 54]

filename.ext (no path)

parserPage::$id

string = '' [line 49]

not implemented in this version, will be used to link xml output pages

Page 261 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 309: PhpDocumentor 1.2.2 Manual

parserPage::$modDate

string = '' [line 86]

not implemented yet file modification date, will be used for makefiles

parserPage::$name

string = '' [line 64]

phpdoc-safe name (only letters, numbers and _)

parserPage::$package

string = 'default' [line 72]

parserPage::$packageOutput

mixed = false [line 102]

Used to limit output, contains contents of --packageoutput commandline. Does not increase parsing time. Use --ignore for that

Var either false or an array of packages See phpDocumentor_IntermediateParser::$packageoutput, Converter::$package_output

parserPage::$parserVersion

string = PHPDOCUMENTOR_VER [line 80]

parserPage::$path

string = '' [line 90]

Var full path this page represents

Page 262 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 310: PhpDocumentor 1.2.2 Manual

parserPage::$source

array = array() [line 95]

Tokenized source code of the file

parserPage::$sourceLocation

string = '' [line 59]

relative source location

parserPage::$subpackage

string = '' [line 76]

parserPage::$type

string = 'page' [line 44]

Type is used by many functions to skip the hassle of if

1 get_class($blah) == 'parserBlah'

Constructor function parserPage::parserPage() [line 108]sets package to default package

Global Variable Used string $phpDocumentor_DefaultPackageName: default package name

string function parserPage::getFile() [line 146]string function parserPage::getName() [line 203]array function parserPage::getPackageOutput() [line 186]

See phpDocumentor_IntermediateParser::$packageoutput

boolean function parserPage::getParseData() [line 247]Not implemented in this version

Page 263 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 311: PhpDocumentor 1.2.2 Manual

string function parserPage::getPath() [line 167]string function parserPage::getSourceLocation($c, [$pearize = false]) [line 223]

Function Parameters:

Converter $c boolean $pearize if this parameter is true, it will truncate the source location to the subdirectoryof pear

string function parserPage::getType() [line 117] function parserPage::setFile($file) [line 138]

Function Parameters:

string $file

Sets the name to display in documentation (can be an alias set with @name)

function parserPage::setName($name) [line 195]Function Parameters:

string $name phpdoc-safe name (only _, numbers and letters) set by Parser::parse()

See Parser::parse()

function parserPage::setPackageOutput($packages) [line 177]Function Parameters:

array $packages array of packages to display in documentation (package1,package2,...)

See phpDocumentor_IntermediateParser::$packageoutput

Page 264 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 312: PhpDocumentor 1.2.2 Manual

function parserPage::setPath($path) [line 155]Function Parameters:

string $path full path to file

function parserPage::setSource($source) [line 129]Function Parameters:

string|array $source

Sets the source code of the file for highlighting. PHP 4.3.0+ passes an array of tokenizer tokens by line number. PHP 4.2.3- passes a

string to be passed to http://www.php.net/highlight_string

function parserPage::setSourceLocation($source) [line 212]Function Parameters:

string $source path of this file relative to program root

Class parserStringWithInlineTags [line 558]

Used to represent strings that contain inline tags, so that they can be properly parsedat link time

Package phpDocumentor Sub-Package ParserData Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

Page 265 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 313: PhpDocumentor 1.2.2 Manual

parserStringWithInlineTags::$type

string = '_string' [line 565]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah' always '_string'

parserStringWithInlineTags::$value

array = array() [line 574]

array of strings and parserInlineTags Format: array(string1,string2,parserInlineTag1,string3,parserInlineTag2,...)

function parserStringWithInlineTags::add($stringOrInlineTag) [line 580]Function Parameters:

mixed $stringOrInlineTag either a string or a parserInlineTag

equivalent to the . operator ($a = $b . $c)

function parserStringWithInlineTags::Convert(&$converter, [$postprocess = true]) [line 692]Function Parameters:

Converter &$converter boolean $postprocess true if one needs to postprocess

Use to convert the string to a real string with all inline tags parsed and linked

See Converter::returnSee()

string function parserStringWithInlineTags::getString([$trim = true]) [line 669]

Page 266 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 314: PhpDocumentor 1.2.2 Manual

return the string unconverted (all inline tags are taken out - this should only be used in pre-parsing to see if any other text is in the string)

Uses parserInlineTag::getString() - removes inline tag length, as it is indeterminate until conversion.

boolean function parserStringWithInlineTags::hasInlineTag() [line 610]Determine whether the string contains any inline tags

Tutorial phpDocumentor Inline tags

function parserStringWithInlineTags::setSource($source) [line 624]Function Parameters:

string|array $source source code ready to be highlighted

Pass source code to any {@source} tags contained within the string for laterconversion.

integer function parserStringWithInlineTags::trimmedStrlen() [line 639]equivalent to trim(strlen($string))

Page 267 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 315: PhpDocumentor 1.2.2 Manual

ParserDocBlock.incDocBlock Parser Classes

Package phpDocumentor Sub-Package ParserDocBlock

Class parserDesc [line 33]

represents a short or long description in a DocBlock (parserDocBlock)

Package phpDocumentor Sub-Package ParserDocBlock Version $Id: ParserDocBlock.inc,v 1.38.2.7 2003/07/24 20:22:43 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserDesc::$type

string = '_desc' [line 40]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah' always '_desc'

function parserDesc::add($stringOrClass) [line 46]Function Parameters:

Page 268 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 316: PhpDocumentor 1.2.2 Manual

mixed $stringOrClass like parserStringWithInlineTags::add(), this can be a string orparserInlineTag, but it can also be a parserStringWithInlineTags, and the contents willbe merged

boolean function parserDesc::hasInheritDoc() [line 67]boolean function parserDesc::hasSource() [line 78] function parserDesc::replaceInheritDoc($desc) [line 90]

Function Parameters:

parserDesc $desc parent parserDesc, used to retrieve the description

replaces {@inheritdoc} with the contents of the parent DocBlock

Class parserDocBlock [line 115]

Represents a docblock and its components, $desc, $sdesc, $tags, and also $paramsfor functions

Package phpDocumentor Sub-Package ParserDocBlock Version $Id: ParserDocBlock.inc,v 1.38.2.7 2003/07/24 20:22:43 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserDocBlock::$category

string = [line 201]

parserDocBlock::$desc

parserDesc = false [line 120]

parserDocBlock::$endlinenumber

Page 269 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 317: PhpDocumentor 1.2.2 Manual

false|integer = false [line 144]

Line number in the source on which this docblock ends

Since 1.2

parserDocBlock::$explicitcategory

boolean = false [line 199]

fix for bug 708559

Usedby parserDocBlock::setExplicitCategory()

parserDocBlock::$explicitpackage

boolean = false [line 194]

fix for bug 591396

Usedby parserDocBlock::setExplicitPackage()

parserDocBlock::$funcglobals

array = array() [line 170]

array of global variable data. Format: array(index of global variable in @global tag list -OR- global variable name

=> array(datatype,parserStringWithInlineTags),...)

parserDocBlock::$hasaccess

Page 270 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 318: PhpDocumentor 1.2.2 Manual

boolean = false [line 209]

whether this DocBlock has an @access tag

parserDocBlock::$hasname

boolean = false [line 213]

whether this DocBlock has a @name tag

parserDocBlock::$linenumber

false|integer = false [line 138]

Line number in the source on which this docblock begins

Since 1.2

parserDocBlock::$package

string = 'default' [line 203]

parserDocBlock::$packagedescrip

string = '' [line 219]

description of package parsed from @package tag Unused in this version

parserDocBlock::$params

array = array() [line 162]

array of param data. Format: array(index of param in function parameter list -OR- parameter name =>

parserStringWithInlineTags,...)

parserDocBlock::$processed_desc

array = false [line 124]

Page 271 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 319: PhpDocumentor 1.2.2 Manual

Var array of parserDescs

parserDocBlock::$processed_sdesc

array = false [line 128]

Var array of parserDescs

parserDocBlock::$return

mixed = false [line 184]

This is either a parserReturnTag or false if no return tag is present

parserDocBlock::$sdesc

parserDesc = false [line 132]

parserDocBlock::$statics

array = array() [line 179]

array of static variable data. Format: array(index of static variable in @global tag list -OR- static variable name =>

parserStaticvarTag,...)

parserDocBlock::$subpackage

string = '' [line 205]

parserDocBlock::$subpackagedescrip

string = '' [line 225]

description of subpackage parsed from @package tag Unused in this version

parserDocBlock::$tags

array = array() [line 149]

Page 272 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 320: PhpDocumentor 1.2.2 Manual

array of parserTags

parserDocBlock::$unknown_tags

array = array() [line 154]

array of unrecognized parserTags

parserDocBlock::$var

mixed = false [line 189]

This is either a parserVarTag or false if no var tag is present

Constructor function parserDocBlock::parserDocBlock() [line 238]sets package to default

Global Variable Used string $phpDocumentor_DefaultPackageName: default package name

function parserDocBlock::addAccess($value) [line 855]Function Parameters:

string $value should be either public or private

add an @access tag to the tags array

function parserDocBlock::addExample($value, $path) [line 549]Function Parameters:

string $value contents of the tag string $path path to the file containing this tag

adds an @example tag

Page 273 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 321: PhpDocumentor 1.2.2 Manual

function parserDocBlock::addFileSource($path, $source) [line 882]Function Parameters:

string $path full path to the file array $source tokenized source code, ordered by line number

Adds a new @filesource tag to the DocBlock

Tutorial @filesource

function parserDocBlock::addFuncGlobal($type, $value) [line 796]Function Parameters:

string $type global type string $value description of how the global is used in the function

adds a function declaration of @global to the $funcglobals array

function parserDocBlock::addKeyword($keyword, $value) [line 520]Function Parameters:

string $keyword tag name parserStringWithInlineTags $value the contents of the tag

Global Variable Used array $_phpDocumentor_setting: used to determine whether to add the@internal tag or not

function parserDocBlock::addLink($link) [line 892]Function Parameters:

Page 274 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 322: PhpDocumentor 1.2.2 Manual

string $link

creates a parserLinkTag and adds it to the $tags array

function parserDocBlock::addName($value) [line 764]Function Parameters:

string $value new name of element

Adds a @name tag to the tag list

function parserDocBlock::addPackage($keyword, $value) [line 636]Function Parameters:

string $keyword tag name (either package or subpackage) mixed $value either a string or a parserStringWithInlineTags. Strips all inline tags and use thetext as the package

function parserDocBlock::addParam($paramVar, $paramType, $value) [line 460]Function Parameters:

string $paramVar if empty, param is indexed in the order received and set using changeParam() parserStringWithInlineTags $value

function parserDocBlock::addReturn($returnType, $value) [line 915]Function Parameters:

string $returnType the one-word name of the return type (mixed should be used if more thanone type) parserStringWithInlineTags $value

creates a parserReturnTag and adds it to the $tags array

Page 275 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 323: PhpDocumentor 1.2.2 Manual

function parserDocBlock::addSee($keyword, $value) [line 903]Function Parameters:

string $value string $keyword either see or uses

creates a parserLinkTag and adds it to the $tags array

function parserDocBlock::addStaticVar($staticvar, $type, $descrip) [line 783]Function Parameters:

string $staticvar if empty, staticvar is indexed in the order received and set using changeStatic() string $type data type parserStringWithInlineTags $descrip

function parserDocBlock::addTag($tag) [line 500]Function Parameters:

parserTag $tag tag

Used to insert DocBlock Template tags into a docblock

Global Variable Used array $_phpDocumentor_setting: used to determine whether to addignored tags, or not

function parserDocBlock::addUnknownTag($keyword, $value) [line 559]Function Parameters:

string $keyword tag name string $value tag value

Page 276 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 324: PhpDocumentor 1.2.2 Manual

adds an unknown tag to the $unknown_tags array for use by custom converters

function parserDocBlock::addUses($seeel, $description) [line 963]Function Parameters:

string $seeel @see-style text, used for Converter::getLink() parserStringWithInlineTags $description description of how the used element is used

Add a @uses tag to the DocBlock

Tutorial @uses

function parserDocBlock::addVar($varType, $value) [line 932]Function Parameters:

string $varType the one-word name of the variable type (mixed should be used if more than onetype) parserStringWithInlineTags $value

creates a parserVarTag and adds it to the $tags array

function parserDocBlock::canSource() [line 302]Tells the DocBlock it can have a @filesource tag

Only page-level DocBlocks may have a @filesource tag

function parserDocBlock::changeGlobal($index, $name) [line 805]Function Parameters:

integer $index index of parameter in the $funcglobals array string $name name of the parameter to set in the $funcglobals array

Page 277 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 325: PhpDocumentor 1.2.2 Manual

function parserDocBlock::changeParam($index, $name) [line 472]Function Parameters:

integer $index index of parameter in the $params array string $name name of the parameter to set in the $params array

function parserDocBlock::changeStatic($index, $name) [line 815]Function Parameters:

integer $index index of parameter in the $statics array string $name name of the parameter to set in the $statics array

string function parserDocBlock::getDesc(&$converter) [line 438]Function Parameters:

Converter &$converter takes $desc and converts it to a string and returns it if present,otherwise returns ''

integer function parserDocBlock::getEndLineNumber() [line 276]Retrieve ending line number

boolean function parserDocBlock::getExplicitCategory() [line 627]If the DocBlock has a @category tag, then this returns true

boolean function parserDocBlock::getExplicitPackage() [line 606]If the DocBlock has a @package tag, then this returns true

mixed function parserDocBlock::getKeyword($keyword) [line 972]Function Parameters:

string $keyword

integer function parserDocBlock::getLineNumber() [line 258]Retrieve starting line number

Page 278 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 326: PhpDocumentor 1.2.2 Manual

string function parserDocBlock::getSDesc(&$converter) [line 416]Function Parameters:

Converter &$converter takes $sdesc and converts it to a string and returns it if present,otherwise returns ''

string function parserDocBlock::getType() [line 1021]boolean function parserDocBlock::hasInheritDoc() [line 393]

Wrapper for parserDesc::hasInheritDoc()

array function parserDocBlock::listParams() [line 987] function parserDocBlock::listTags(0) [line 1005]

Function Parameters:

Converter 0

function parserDocBlock::overridePackage($category, $package, $subpackage, $elname, $type) [line 574]Function Parameters:

string $category string $package string $subpackage string $elname element name string $type element type (include, define, var, method, global, function)

set the element's package to the passed values. Used inphpDocumentor_IntermediateParser to align package of elements inside a class or procedural page to the package of the class/procedural page

function parserDocBlock::postProcess() [line 286]Parse out any html tags from doc comments, and make them into

abstract structures

Page 279 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 327: PhpDocumentor 1.2.2 Manual

Uses parserDescParser::parse()

function parserDocBlock::replaceInheritDoc($desc) [line 405]Function Parameters:

parserDesc $desc

Wrapper for parserDesc::replaceInheritDoc() Also replaces {@inheritdoc} in the $processed_desc

function parserDocBlock::setDesc($desc) [line 378]Function Parameters:

parserDesc|parserDocBlock $desc sets $desc

function parserDocBlock::setEndLineNumber($number) [line 267]Function Parameters:

integer $number

Sets the ending line number for the DocBlock

function parserDocBlock::setExplicitCategory() [line 618]Used if this docblock has a @category tag.

phpDocumentor will guess category for DocBlocks that don't have a @category tag

Uses parserDocBlock::$explicitcategory

function parserDocBlock::setExplicitPackage() [line 597]

Page 280 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 328: PhpDocumentor 1.2.2 Manual

Used if this docblock has a @package tag. phpDocumentor will guess package for DocBlocks that don't have a @package tag

Uses parserDocBlock::$explicitpackage

function parserDocBlock::setLineNumber($number) [line 249]Function Parameters:

integer $number

Sets the starting line number for the DocBlock

function parserDocBlock::setShortDesc($desc) [line 336]Function Parameters:

parserDesc|parserDocBlock|parserTag $desc sets $sdesc

Set the short description of the DocBlock Setting the short description is possible by passing in one of three possible parameters:

another DocBlock's short descriptionanother DocBlock, the short description will be extracteda Zend Studio-compatible @desc tag

function parserDocBlock::setSource($source, [$class = false]) [line 366]Function Parameters:

string|array $source tokenized highlight-ready source code false|string $class name of class if this is a method source

Passes to parserStringWithInlineTags::setSource() After passing, it calls postProcess() to set up the new source

Page 281 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 329: PhpDocumentor 1.2.2 Manual

function parserDocBlock::updateGlobals($funcs) [line 825]Function Parameters:

array $funcs

replaces nameless global variables in the $funcglobals array with their names

function parserDocBlock::updateParams($params) [line 482]Function Parameters:

array $params Format: array(parameter index => parameter name,...)

replaces nameless parameters in the $params array with their names

function parserDocBlock::updateStatics($funcs) [line 840]Function Parameters:

array $funcs

replaces nameless static variables in the $statics array with their names

Page 282 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 330: PhpDocumentor 1.2.2 Manual

ParserElements.incParser Elements, all classes representing documentable elements

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.1

Class parserClass [line 659]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserClass::$curfile

string = false [line 688]

Var same as parserElement::$path

parserClass::$extends

Page 283 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 331: PhpDocumentor 1.2.2 Manual

mixed = false [line 672]

Var false or contents of extends clause in class declaration

parserClass::$ignore

boolean = false [line 683]

Used to determine whether a class should be ignored or not. Helps maintain integrityof parsing

See Classes::getParentClass()

parserClass::$parent

mixed = false [line 677]

Format: array(file, parent) where parent class is found or false if no parent

Usedby parserTutorial::setParent() - creates a link to the documentation for the parent tutorial

parserClass::$sourceLocation

string = '' [line 668]

See parserPage::$sourceLocation

parserClass::$tutorial

tutorialLink|false = false [line 692]

Page 284 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 332: PhpDocumentor 1.2.2 Manual

Var either a link to the tutorial associated with this class, or false

parserClass::$type

string = 'class' [line 665]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'class'

function parserClass::addTutorial($t, &$c) [line 698]Function Parameters:

parserTutorial $t Converter &$c

array function parserClass::getChildClassList(&$c) [line 1027]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

returns a list of all child classes of this class

Usedby XMLDocBookpeardoc2Converter::generateChildClassList() Usedby Converter::generateChildClassList()

mixed function parserClass::getConflicts(&$c) [line 719]Function Parameters:

Page 285 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 333: PhpDocumentor 1.2.2 Manual

Converter &$c

Returns all classes in other packages that have the same name as this class

Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts()

boolean function parserClass::getExtends() [line 1089]

See parserClass::$extends

array function parserClass::getInheritedMethods(&$c, [$override = false]) [line 915]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing boolean $override determines whether overriden methods should be included in the list ofinherited methods

array function parserClass::getInheritedVars(&$c, [$override = true], [$vars = false]) [line 962]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing boolean $override determines whether overriden vars should be included in the list of inheritedvars

mixed function parserClass::getLink($c, [$text = false], [$returnobj = false]) [line 732]Function Parameters:

Page 286 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 334: PhpDocumentor 1.2.2 Manual

Converter $c string $text text to display for the link or false for default text

quick way to link to this element

mixed function parserClass::getMethod(&$c, $name) [line 834]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing string $name method name in this class

array function parserClass::getMethodNames(&$c) [line 853]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

array function parserClass::getMethods(&$c) [line 824]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

mixed function parserClass::getParent(&$c) [line 811]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

retrieve object that represents the parent class

array function parserClass::getParentClassTree(&$c) [line 1008]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

Page 287 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 335: PhpDocumentor 1.2.2 Manual

Usedby XMLDocBookConverter::generateFormattedClassTree() Usedby XMLDocBookpeardoc2Converter::generateFormattedClassTree() Usedby HTMLSmartyConverter::generateFormattedClassTree() Usedby HTMLframesConverter::generateFormattedClassTree() Usedby CHMdefaultConverter::generateFormattedClassTree()

string function parserClass::getSourceLocation($c, [$pearize = false]) [line 1056]Function Parameters:

Converter $c boolean $pearize

See parserClass::$sourceLocation

parserTutorial function parserClass::getTutorial() [line 709]Get the associated tutorial for this class, if any

Tutorial phpDocumentor Tutorials

mixed function parserClass::getVar(&$c, $name) [line 844]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing string $name var name in this class

Page 288 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 336: PhpDocumentor 1.2.2 Manual

array function parserClass::getVarNames(&$c) [line 898]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

array function parserClass::getVars(&$c) [line 889]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing

boolean function parserClass::hasMethod(&$c, $name) [line 870]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing string $name method name

boolean function parserClass::hasVar(&$c, $name) [line 880]Function Parameters:

Converter &$c this function will not work before the Conversion stage of parsing string $name var name

function parserClass::setExtends($extends) [line 1080]Function Parameters:

string $extends

See parserClass::$extends

function parserClass::setParent($p, $f, &$c) [line 752]Function Parameters:

Page 289 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 337: PhpDocumentor 1.2.2 Manual

string $p parent class name string $f parent class file Classes &$c Classes object currently calling setParent

See Classes::setClassParent()

function parserClass::setParentNoClass($par) [line 801]Function Parameters:

string $par parent class name (used by Classes::setClassParent() if parent class not found

function parserClass::setSourceLocation($sl) [line 1045]Function Parameters:

string $sl

See parserClass::$sourceLocation

Class parserDefine [line 1369]

Package phpDocumentor Sub-Package ParserElements

Page 290 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 338: PhpDocumentor 1.2.2 Manual

Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserDefine::$type

string = 'define' [line 1375]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'define'

mixed function parserDefine::getConflicts(&$c) [line 1401]Function Parameters:

Converter &$c

Returns all defines in other packages that have the same name as this define

Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts()

mixed function parserDefine::getLink($c, [$text = false], [$returnobj = false]) [line 1383]Function Parameters:

Converter $c string $text text to display for the link or false for default text

Page 291 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 339: PhpDocumentor 1.2.2 Manual

quick way to link to this element

Class parserElement [line 37]

all elements except parserPackagePage descend from this abstract class

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Abstract Element

parserElement::$conflicts

mixed = false [line 51]

Var either false or an array of paths to files with conflicts

parserElement::$docblock

mixed = false [line 42]

Var either false or a parserDocBlock

Page 292 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 340: PhpDocumentor 1.2.2 Manual

parserElement::$endlinenumber

false|integer = 0 [line 70]

line number on file where this element stops

Since 1.2

parserElement::$file

string = '' [line 57]

location of this element (filename)

parserElement::$linenumber

false|integer = false [line 77]

Line number in the source on which this element appears

Since 1.2

parserElement::$name

mixed = [line 46]

name of this element, or include type if element is a parserInclude

parserElement::$path

string = '' [line 63]

full path location of this element (filename)

integer function parserElement::getEndLineNumber() [line 124]string function parserElement::getFile() [line 167]integer function parserElement::getLineNumber() [line 116]

Page 293 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 341: PhpDocumentor 1.2.2 Manual

string function parserElement::getName() [line 158]string function parserElement::getPackage() [line 130]string function parserElement::getPath() [line 176] function parserElement::setDocBlock($docblock) [line 82]

Function Parameters:

parserDocBlock $docblock

function parserElement::setEndLineNumber($l) [line 108]Function Parameters:

integer $l

Sets the ending line number of elements

function parserElement::setFile($file) [line 139]Function Parameters:

string $file

function parserElement::setLineNumber($number) [line 99]Function Parameters:

integer $number

Set starting line number

function parserElement::setName($name) [line 90]Function Parameters:

string $name

function parserElement::setPath($file) [line 145]Function Parameters:

string $file

Page 294 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 342: PhpDocumentor 1.2.2 Manual

Class parserFunction [line 320]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserFunction::$globals

array = false [line 350]

global declarations parsed from function definition

Var Format: array(globalname1, globalname2,....)

parserFunction::$params

array = false [line 334]

parameters parsed from function definition. param name may be null, in which case, updateParams() must be called from the

Converter

Var Format: array(param name => default value parsed from function definition)

Page 295 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 343: PhpDocumentor 1.2.2 Manual

See updateParams()

parserFunction::$returnsreference

boolean = false [line 344]

Function returns a reference to an element, instead of a value set to true if function is declared as:

1 function & func(...

parserFunction::$source

mixed = '' [line 357]

parserFunction::$statics

array = false [line 355]

static variable declarations parsed from function definition

Var Format: array(array('name' => staticvar1,'val' => '' or default val of staticvar1),...)

parserFunction::$type

string = 'function' [line 326]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'function'

function parserFunction::addGlobals($globals) [line 430]Function Parameters:

array $globals Format: array(globalname1, globalname2,....)

Page 296 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 344: PhpDocumentor 1.2.2 Manual

Add all "global $var, $var2" declarations to this function

function parserFunction::addParam($name, $value, [$has_default = true]) [line 363]Function Parameters:

string $name string $value default value parsed from function definition boolean $has_default indicates whether this parameter has a default value

function parserFunction::addSource($source) [line 372]Function Parameters:

string|array $source

Set the source code. Always array in PHP 4.3.0+

function parserFunction::addStatics($static, $vals) [line 440]Function Parameters:

array $static Format: array(varname1, varname2,...) array $vals Format: array(default val of var 1, default val of var 2,...) if var 1 has no default,array(default val of var 2,...)

Add all "static $var, $var2 = 6" declarations to this function

mixed function parserFunction::getConflicts(&$c) [line 419]Function Parameters:

Converter &$c

Returns all functions in other packages that have the same name as this function

Page 297 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 345: PhpDocumentor 1.2.2 Manual

Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts()

string function parserFunction::getFunctionCall() [line 567]Get a human-friendly description of the function call

takes declaration like: and returns: string &func( $param1, [$param2 = 6], [$param3 = array('20',9 => "heroo")] )

array function parserFunction::getIntricateFunctionCall($converter, $paramtags) [line 608]Like getFunctionCall(), but has no English or pre-determined formatting.

Much more flexible.

See parserFunction::getFunctionCall()

mixed function parserFunction::getLink($c, [$text = false], [$returnobj = false]) [line 401]Function Parameters:

Converter $c string $text text to display for the link or false for default text

quick way to link to this element

string function parserFunction::getParam($name) [line 461]Function Parameters:

string $name

boolean function parserFunction::getReturnsReference() [line 548]

Page 298 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 346: PhpDocumentor 1.2.2 Manual

string|array function parserFunction::getSource() [line 390]boolean function parserFunction::hasSource() [line 381]

Determine whether the source code has been requested via {@source}

array function parserFunction::listGlobals() [line 502]array function parserFunction::listParams() [line 477]array function parserFunction::listStatics() [line 521] function parserFunction::setReturnsReference() [line 540]

sets $returnsreference to true

Class parserGlobal [line 206]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.1 Author Greg Beaver < mailto:[email protected]>

parserGlobal::$datatype

string = 'mixed' [line 218]

Name of the global's data type

parserGlobal::$type

string = 'global' [line 212]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'global'

Page 299 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 347: PhpDocumentor 1.2.2 Manual

mixed function parserGlobal::getConflicts(&$c) [line 251]Function Parameters:

Converter &$c

Returns all global variables in other packages that have the same name as this globalvariable

Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts() Usedby Converter::getFormattedConflicts()

string function parserGlobal::getDataType(&$converter) [line 277]Function Parameters:

Converter &$converter

Retrieve converter-specific representation of the data type If the data type is a documented class name, then this function will return a Converter-

specific link to that class's documentation, so users can click/browse to the documentationdirectly from the global variable declaration

mixed function parserGlobal::getLink(&$c, [$text = false], [$returnobj = false]) [line 233]Function Parameters:

Converter &$c string $text text to display for the link or false for default text

quick way to link to this element

Page 300 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 348: PhpDocumentor 1.2.2 Manual

function parserGlobal::setDataType($type) [line 262]Function Parameters:

string $type

Sets the name of the global variable's type

Class parserInclude [line 190]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserInclude::$type

string = 'include' [line 196]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'include'

Page 301 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 349: PhpDocumentor 1.2.2 Manual

Class parserMethod [line 1215]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserMethod::$class

string = '' [line 1227]

Var class that contains this method

parserMethod::$isConstructor

boolean = false [line 1223]

Var whether this method is a constructor

parserMethod::$isDestructor

boolean = false [line 1225]

Var whether this method is a destructor by PEAR standards

parserMethod::$type

string = 'method' [line 1221]

Page 302 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 350: PhpDocumentor 1.2.2 Manual

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'method'

Constructor function parserMethod::parserMethod($class) [line 1232]Function Parameters:

string $class

string function parserMethod::getClass() [line 1261]Return name of the class that contains this method

string function parserMethod::getFunctionCall() [line 1242]adds "constructor " to start of function call if $isConstructor is true

See parserFunction::getFunctionCall()

function parserMethod::getIntricateFunctionCall($converter, $paramtags) [line 1249]mixed function parserMethod::getLink($c, [$text = false], [$returnobj = false]) [line 1297]

Function Parameters:

Converter $c string $text text to display for the link or false for default text

quick way to link to this element

mixed function parserMethod::getOverrides(&$c) [line 1270]Function Parameters:

Converter &$c

Page 303 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 351: PhpDocumentor 1.2.2 Manual

array function parserMethod::getOverridingMethods(&$c) [line 1330]Function Parameters:

Converter &$c

Usedby Converter::getFormattedDescMethods()

array function parserMethod::getOverridingMethodsForClass(&$c, &$class) [line 1342]Function Parameters:

Converter &$c parserClass &$class

function parserMethod::setConstructor() [line 1313]Use this method to tell the parser that this method is the class constructor

function parserMethod::setDestructor() [line 1321]Use this method to tell the parser that this method is the class constructor

Class parserPackagePage [line 1417]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1

Page 304 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 352: PhpDocumentor 1.2.2 Manual

Author Greg Beaver < mailto:[email protected]>

parserPackagePage::$package

string = 'default' [line 1425]

parserPackagePage::$type

string = 'packagepage' [line 1423]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'packagepage'

Constructor function parserPackagePage::parserPackagePage($package) [line 1430]Function Parameters:

string $package

function parserPackagePage::Convert(&$c) [line 1438]Function Parameters:

Converter &$c

Class parserTutorial [line 1449]

Package phpDocumentor Sub-Package ParserElements

Page 305 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 353: PhpDocumentor 1.2.2 Manual

Usedby XMLPackagePageParser::parse() - using Publisher::PublishEvent(), a new tutorial is created from the file parsed, and passed to the Intermediate Parser Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Since 1.2

parserTutorial::$children

array = false [line 1514]

links to the child tutorials, or false if none

parserTutorial::$ini

array = false [line 1490]

output from tutorialname.ext.ini an array generated by phpDocumentor_parse_ini_file() containing an index 'Linked

Tutorials' with an array of tutorial names in the order they should appear. This is used togenerate a linked list of tutorials like phpDocumentor tags

parserTutorial::$linked_element

mixed = [line 1468]

The documentable element this tutorial is linked to Can be a parserData, parserClass, or nothing for package/subpackage docs

parserTutorial::$name

string = [line 1478]

filename minus extension of this tutorial (used for @tutorial tag)

parserTutorial::$next

tutorialLink = false [line 1495]

link to the next tutorial in a document series, or false if none

Page 306 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 354: PhpDocumentor 1.2.2 Manual

Usedby parserTutorial::setNext() - creates a link to the documentation for the next tutorial

parserTutorial::$package

string = 'default' [line 1457]

parserTutorial::$parent

tutorialLink = false [line 1509]

link to the parent tutorial in a document series, or false if none This is used to generate an "Up" or "Home" link like the php

manual. The parent is defined as a tutorial that has a parenttutorialname.ext.ini file and isnot contained by any other tutorial's tutorialname.ext.ini

Usedby parserTutorial::setParent() - creates a link to the documentation for the parent tutorial

parserTutorial::$path

string = [line 1473]

path to the tutorial page

parserTutorial::$prev

tutorialLink = false [line 1500]

link to the previous tutorial in a document series, or false if none

Usedby parserTutorial::setPrev() - creates a link to the documentation for the previous tutorial

parserTutorial::$tutorial_type

string = [line 1462]

Page 307 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 355: PhpDocumentor 1.2.2 Manual

Either cls, pkg, or proc

parserTutorial::$type

string = 'tutorial' [line 1455]

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'tutorial'

parserTutorial::$_xml

boolean = true [line 1480]

Constructor function parserTutorial::parserTutorial($data, $info) [line 1526]Function Parameters:

parserXMLDocBookTag $data top-level tag (<refentry> for 1.2.0) information $info about the tutorial file. Format:

array('tutename' => tutorial name, 'path' => relative path of tutorial to tutorials/ directory 'ini' => contents of the tutorial .ini file, if any)

function parserTutorial::Convert(&$c, [$postprocess = true]) [line 1564]Function Parameters:

Converter &$c boolean $postprocess determines whether character data is postprocessed to be Converter-friendly or not.

string|tutorialLink function parserTutorial::getLink(&$c, [$pure = false], [$section = '']) [line 1659]Function Parameters:

Converter &$c

Page 308 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 356: PhpDocumentor 1.2.2 Manual

boolean $pure if true, returns a tutorialLink instead of a string string $section section name to link to

Get a link to this tutorial, or to any subsection of this tutorial

function parserTutorial::getNext(&$c) [line 1624]Function Parameters:

Converter &$c

Retrieve converter-specific link to the next tutorial's documentation

function parserTutorial::getParent(&$c) [line 1602]Function Parameters:

Converter &$c

Retrieve converter-specific link to the parent tutorial's documentation

function parserTutorial::getPrev(&$c) [line 1646]Function Parameters:

Converter &$c

Retrieve converter-specific link to the previous tutorial's documentation

function parserTutorial::getTitle(&$c, [$subsection = '']) [line 1544]Function Parameters:

Converter &$c string $subsection which subsection to retrieve the title from, if any

Page 309 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 357: PhpDocumentor 1.2.2 Manual

Retrieve the title of the tutorial, or of any subsection

Uses parserXMLDocBookTag::getSubSection() - retrieve the subsection to to get a title from

function parserTutorial::isChildOf($parents) [line 1583]Function Parameters:

array $parents array of parserTutorials that have child tutorials

function parserTutorial::setNext($next, &$c) [line 1613]Function Parameters:

parserTutorial $next Converter &$c

Uses parserTutorial::$next - creates a link to the documentation for the next tutorial

function parserTutorial::setParent($parent, &$c) [line 1574]Function Parameters:

parserTutorial $parent Converter &$c

Uses parserTutorial::$parent - creates a link to the documentation for the parent tutorial

Page 310 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 358: PhpDocumentor 1.2.2 Manual

function parserTutorial::setPrev($prev, &$c) [line 1635]Function Parameters:

parserTutorial $prev Converter &$c

Uses parserTutorial::$prev - creates a link to the documentation for the previous tutorial

Class parserVar [line 1103]

Package phpDocumentor Sub-Package ParserElements Version $Id: ParserElements.inc,v 1.45.2.4 2003/08/13 20:01:56 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

parserVar::$class

string = '' [line 1111]

Var class that contains this var

parserVar::$type

string = 'var' [line 1109]

Page 311 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 359: PhpDocumentor 1.2.2 Manual

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

Var always 'var'

Constructor function parserVar::parserVar($class) [line 1116]Function Parameters:

string $class

string function parserVar::getClass() [line 1125]Retrieve the class name

mixed function parserVar::getLink($c, [$text = false], [$returnobj = false]) [line 1136]Function Parameters:

Converter $c string $text text to display for the link or false for default text

quick way to link to this element

mixed function parserVar::getOverrides(&$c) [line 1153]Function Parameters:

Converter &$c

array function parserVar::getOverridingVars(&$c) [line 1176]Function Parameters:

Converter &$c

Page 312 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 360: PhpDocumentor 1.2.2 Manual

Usedby Converter::getFormattedDescVars()

array function parserVar::getOverridingVarsForClass(&$c, &$class) [line 1188]Function Parameters:

Converter &$c parserClass &$class

Page 313 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 361: PhpDocumentor 1.2.2 Manual

HighlightParser.incSource Code Highlighting

The classes in this file are responsible for the dynamic @example, @filesource and{@source} tags output. Using the phpDocumentor_HighlightWordParser, thephpDocumentor_HighlightParser retrieves PHP tokens one by one from the array generatedby phpDocumentorTWordParser source retrieval functions and then highlights themindividually.

It accomplishes this highlighting through the assistance of methods in the output Converterpassed to its parse() method, and then returns the fully highlighted source as a string

Package phpDocumentor Sub-Package Parsers Since 1.2.0beta3 Tutorial @example, @filesource, inline {@source}

Page 314 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 362: PhpDocumentor 1.2.2 Manual

Parser.inc

Package phpDocumentor Sub-Package Parsers

PARSER_EVENT_ARRAY = 115 [line 143]used when an array definition is encountered in parsing

PARSER_EVENT_CLASS = 111 [line 121]used when a class definition is encountered in parsing

PARSER_EVENT_CLASS_MEMBER = 137 [line 250]used by the HighlightParser only, when ->var or ->function() is encountered in a

method

PARSER_EVENT_COMMENT = 105 [line 91]used when short comment // is encountered in parsing

PARSER_EVENT_COMMENTBLOCK = 104 [line 86]used when long comment /x x/ where x is an asterisk is encountered in parsing

PARSER_EVENT_DEFINE = 107 [line 101]used when a define statement is encountered in parsing

PARSER_EVENT_DEFINE_GLOBAL = 128 [line 205]used when parsing a global variable declaration

PARSER_EVENT_DEFINE_PARAMS = 108 [line 106]used when a define statement opening parenthesis is encountered in parsing

PARSER_EVENT_DEFINE_PARAMS_PARENTHESIS = 120 [line 168]used when a define statement's opening parenthesis is encountered in parsing

PARSER_EVENT_DESC = 126 [line 195]used when parsing the desc part of a docblock

Page 315 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 363: PhpDocumentor 1.2.2 Manual

PARSER_EVENT_DOCBLOCK = 112 [line 128]used when a DocBlock is encountered in parsing

PARSER_EVENT_DOCBLOCK_TEMPLATE = 133 [line 230]used when encountering a /**#@+ comment marking a new docblock template

PARSER_EVENT_DOCKEYWORD = 113 [line 133]used when a @tag is encountered in DocBlock parsing

PARSER_EVENT_DOCKEYWORD_EMAIL = 114 [line 138]used when a <email@address> is encountered in parsing an @author tag

PARSER_EVENT_END_DOCBLOCK_TEMPLATE = 134 [line 235]used when encountering a /**#@-* / comment (no space) marking the end of using a

docblock template

PARSER_EVENT_END_STATEMENT = 121 [line 172]PARSER_EVENT_EOFQUOTE = 122 [line 175]

used when a < is encountered in parsing

PARSER_EVENT_ESCAPE = 900 [line 25]used when a backslash is encountered in parsing a string or other escapable entity

PARSER_EVENT_FUNCTION = 117 [line 153]used when a function definition is encountered in parsing

PARSER_EVENT_FUNCTION_PARAMS = 109 [line 111]used when a function statement opening parenthesis is encountered in parsing

PARSER_EVENT_FUNC_GLOBAL = 130 [line 215]used when parsing a "global $var1, $var2;" declaration in a function

PARSER_EVENT_GLOBAL_VALUE = 129 [line 210]used when parsing the default value in a global variable declaration

PARSER_EVENT_INCLUDE = 123 [line 180]used when an include/require/include_once/include_once statement is encountered in

parsing

Page 316 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 364: PhpDocumentor 1.2.2 Manual

PARSER_EVENT_INCLUDE_PARAMS = 124 [line 185]used when an opening parenthesis of an include/require/include_once/include_once

statement is encountered in parsing

PARSER_EVENT_INCLUDE_PARAMS_PARENTHESIS = 125 [line 190]used when an inner ( ) is encountered while parsing an

include/require/include_once/include_once statement

PARSER_EVENT_INLINE_DOCKEYWORD = 119 [line 163]used when an inline {@tag} is encountered in parsing a DocBlock

PARSER_EVENT_LOGICBLOCK = 102 [line 76]{ encountered in parsing a function or php code

PARSER_EVENT_METHOD = 135 [line 240]used by the HighlightParser only, when a method starts

PARSER_EVENT_METHOD_LOGICBLOCK = 136 [line 245]used by the HighlightParser only, when a method body is parsed

PARSER_EVENT_NOEVENTS = 103 [line 81]used for the beginning of parsing, before first < ? php encountered

PARSER_EVENT_OUTPHP = 118 [line 158]used when a ? > (with no space) is encountered in parsing

PARSER_EVENT_PHPCODE = 106 [line 96]used when php code processor instruction (< ? php) is encountered in parsing

PARSER_EVENT_QUOTE = 101 [line 71]used when double quotation mark (") encountered in parsing

PARSER_EVENT_QUOTE_VAR = 138 [line 255]used by the HighlightParser only, when {$var} is encountered in a string

PARSER_EVENT_SINGLEQUOTE = 110 [line 116]used when a single quote (') is encountered in parsing

Page 317 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 365: PhpDocumentor 1.2.2 Manual

PARSER_EVENT_STATIC_VAR = 131 [line 220]used when parsing a "static $var1, $var2;" declaration in a function

PARSER_EVENT_STATIC_VAR_VALUE = 132 [line 225]used when parsing the value in a "static $var1 = x" declaration in a function

PARSER_EVENT_TAGS = 127 [line 200]used when parsing the @tag block of a docblock

PARSER_EVENT_VAR = 116 [line 148]used when a var statement is encountered in parsing a class definition

PHPDOCUMENTOR_EVENT_CLASS = 800 [line 30]Class published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_DEFINE = 805 [line 40]Constant (define) published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_DOCBLOCK = 801 [line 32]DocBlock published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_DOCBLOCK_TEMPLATE = 814 [line 67]used when a docblock template is encountered in the source

PHPDOCUMENTOR_EVENT_END_DOCBLOCK_TEMPLATE = 815 [line 69]used when a docblock template is encountered in the source

PHPDOCUMENTOR_EVENT_END_PAGE = 808 [line 50]used to inform phpDocumentor_IntermediateParser that the current file has been

completely parsed. Render then flushes all buffers for functions/classes/defines/includes on the current page

See phpDocumentor_IntermediateParser::HandleEvent()

PHPDOCUMENTOR_EVENT_FUNCTION = 802 [line 34]

Page 318 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 366: PhpDocumentor 1.2.2 Manual

Function published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_GLOBAL = 813 [line 65]used when a global variable definition is encountered in the source

PHPDOCUMENTOR_EVENT_INCLUDE = 810 [line 54]Include (include/require/include_once/include_once) published to IntermediateParser

with this event

PHPDOCUMENTOR_EVENT_MESSAGE = 806 [line 42]

Deprecated

PHPDOCUMENTOR_EVENT_NEWFILE = 811 [line 61]use to inform ErrorTracker of a new file being parsed

PHPDOCUMENTOR_EVENT_NEWLINENUM = 812 [line 63]use to inform ErrorTracker of the next line number being parsed

PHPDOCUMENTOR_EVENT_NEWSTATE = 807 [line 44]use to inform IntermediateParser of a new element being parsed

PHPDOCUMENTOR_EVENT_PACKAGEPAGE = 809 [line 52]Package-level page published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_PAGE = 804 [line 38]New File (page) published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_README_INSTALL_CHANGELOG = 812 [line 58]Contents of README/INSTALL/CHANGELOG files published to IntermediateParser

with this event

PHPDOCUMENTOR_EVENT_TUTORIAL = 811 [line 56]Tutorial published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_VAR = 803 [line 36]Class Variable published to IntermediateParser with this event

Page 319 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 367: PhpDocumentor 1.2.2 Manual

STATE_ARRAY = 215 [line 145]currently parsing an array

STATE_CLASS = 211 [line 123]currently parsing a class definition

STATE_CLASS_MEMBER = 237 [line 252]currently parsing a class member using the HighlightParser

STATE_COMMENT = 205 [line 93]currently parsing a short comment //

STATE_COMMENTBLOCK = 204 [line 88]currently parsing a long comment /x x/ where x is an asterisk

STATE_DEFINE = 207 [line 103]currently parsing a define statement

STATE_DEFINE_PARAMS = 208 [line 108]currently parsing the stuff in ( ) of a define statement

STATE_DEFINE_PARAMS_PARENTHESIS = 220 [line 170]currently parsing an inner parenthetical statement of a define( )

STATE_DESC = 226 [line 197]currently parsing the desc part of a docblock

STATE_DOCBLOCK = 212 [line 130]currently parsing a DocBlock

STATE_DOCBLOCK_TEMPLATE = 233 [line 232]currently parsing the value in a "static $var1 = x" declaration in a function

STATE_DOCKEYWORD = 213 [line 135]currently parsing a @tag in a DocBlock

STATE_DOCKEYWORD_EMAIL = 214 [line 140]

Page 320 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 368: PhpDocumentor 1.2.2 Manual

currently parsing an email in brackets in an @author tag of a DocBlock

STATE_END_CLASS = 311 [line 125]used to tell Render that a class has been completely parsed, and to flush buffers

STATE_END_DOCBLOCK_TEMPLATE = 234 [line 237]currently parsing the value in a "static $var1 = x" declaration in a function

STATE_EOFQUOTE = 222 [line 177]currently parsing a string defined using Perl <

STATE_ESCAPE = 1000 [line 27]used when a backslash is encountered in parsing a string or other escapable entity

STATE_FUNCTION = 217 [line 155]currently parsing a Function or Method

STATE_FUNCTION_PARAMS = 209 [line 113]currently parsing the stuff in ( ) of a function definition

STATE_FUNC_GLOBAL = 230 [line 217]currently parsing a "global $var1, $var2;" declaration in a function

STATE_GLOBAL = 228 [line 207]currently parsing a global variable declaration

STATE_GLOBAL_VALUE = 229 [line 212]currently parsing the default value in a global variable declaration

STATE_INCLUDE = 223 [line 182]currently parsing an include/require/include_once/include_once

STATE_INCLUDE_PARAMS = 224 [line 187]currently parsing the stuff in ( ) of a define statement

STATE_INCLUDE_PARAMS_PARENTHESIS = 225 [line 192]currently parsing an inner parenthetical statement of an

include/includeonce/require/requireonce( )

Page 321 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 369: PhpDocumentor 1.2.2 Manual

STATE_INLINE_DOCKEYWORD = 219 [line 165]currently parsing an inline tag like { @link} in a DocBlock

STATE_LOGICBLOCK = 202 [line 78]currently parsing a { } block

STATE_METHOD = 235 [line 242]currently parsing a method using the HighlightParser

STATE_METHOD_LOGICBLOCK = 236 [line 247]currently parsing the method body using the HighlightParser

STATE_NOEVENTS = 203 [line 83]out of < ? php tag

STATE_OUTPHP = 218 [line 160]currently out of php code

STATE_PHPCODE = 206 [line 98]currently parsing php code

STATE_QUOTE = 201 [line 73]currently parsing a quote

STATE_QUOTE_VAR = 238 [line 257]currently parsing a {$encapsed_var} using the HighlightParser

STATE_SINGLEQUOTE = 210 [line 118]currently parsing a string enclosed in single quotes (')

STATE_STATIC_VAR = 231 [line 222]currently parsing a "static $var1, $var2;" declaration in a function

STATE_STATIC_VAR_VALUE = 232 [line 227]currently parsing the value in a "static $var1 = x" declaration in a function

STATE_TAGS = 227 [line 202]currently parsing the @tag block of a docblock

Page 322 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 370: PhpDocumentor 1.2.2 Manual

STATE_VAR = 216 [line 150]currently parsing a Class variable

Page 323 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 371: PhpDocumentor 1.2.2 Manual

phpDocumentorTParser.inc

Package phpDocumentor Sub-Package Parsers Version $Revision: 1.48.2.13 $ Author Gregory Beaver < mailto:[email protected]>

Page 324 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 372: PhpDocumentor 1.2.2 Manual

XMLpackagePageParser.inc

Package phpDocumentor Sub-Package Parsers Since 1.2 Author Greg Beaver < mailto:[email protected]>

PHPDOCUMENTOR_PDP_EVENT_ATTRIBUTES = 603 [line 39]when tag attributes name="value" are found

PHPDOCUMENTOR_PDP_EVENT_CDATA = 602 [line 35]when <![CDATA[ ]]> is found

PHPDOCUMENTOR_PDP_EVENT_ENTITY = 604 [line 43]when tag attributes name="value" are found

PHPDOCUMENTOR_PDP_EVENT_PROGRAMLISTING = 600 [line 27]when <programlisting> is found

PHPDOCUMENTOR_PDP_EVENT_TAG = 601 [line 31]when a DocBook <tag> is found

PHPDOCUMENTOR_PDP_STATE_ATTRIBUTES = 703 [line 41]when tag attributes name="value" are found

PHPDOCUMENTOR_PDP_STATE_CDATA = 702 [line 37]when <![CDATA[ ]]> is found

PHPDOCUMENTOR_PDP_STATE_ENTITY = 704 [line 45]when tag attributes name="value" are found

PHPDOCUMENTOR_PDP_STATE_PROGRAMLISTING = 700 [line 29]when <programlisting> is found

Page 325 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 373: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_STATE_TAG = 701 [line 33]when a DocBook <tag> is found

Class Parser [line 270]

PHP Parser for PHP 4.2.3- This parser is slower than the tokenizer-based parser, and is deprecated.

Package phpDocumentor Sub-Package Parsers Deprecated in favor of phpDocumentorTParser Version $Id: Parser.inc,v 1.183.2.7 2003/08/19 15:47:14 CelloG Exp $ Author Gregory Beaver < mailto:[email protected]> Author Joshua Eichorn < mailto:[email protected]>

Constructor function Parser::Parser() [line 415]Set up invariant parsing variables

function Parser::categoryTagHandler($word) [line 1957]Function Parameters:

string $word

handles @category Tag Handlers

Page 326 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 374: PhpDocumentor 1.2.2 Manual

Tutorial @category

mixed function Parser::checkEventPop($word, $pevent) [line 2475]this function checks whether parameter $word is a token for popping the current event

off of the Event Stack.

mixed function Parser::checkEventPush($word, $pevent) [line 2453]this function checks whether parameter $word is a token for pushing a new event onto

the Event Stack.

function Parser::configWordParser($e) [line 2818]Function Parameters:

$value $e integer an event number

tell the parser's WordParser $wp to set up tokens to parse words by. tokens are word separators. In English, a space or punctuation are examples of tokens.

In PHP, a token can be a ;, a parenthesis, or even the word "function"

See WordParser

function Parser::defaultTagHandler($word) [line 1900]Function Parameters:

string $word

Handles all standard tags that only have a description Tag Handlers

function Parser::endTag() [line 1882]Called to clean up at the end of parsing a @tag in a docblock

Page 327 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 375: PhpDocumentor 1.2.2 Manual

function Parser::exampleTagHandler($word) [line 1942]Function Parameters:

string $word

handles @example Tag Handlers

Tutorial @example

function Parser::getParserEventName($value) [line 2829]Function Parameters:

$value $value integer an event number

Debugging function, takes an event number and attempts to return its name

function Parser::globalTagHandler($word) [line 1973]Function Parameters:

string $word

handles @global Tag Handlers

Tutorial @global

Page 328 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 376: PhpDocumentor 1.2.2 Manual

function Parser::invalidTagHandler($word) [line 1914]Function Parameters:

string $word

Handles tags like '@filesource' that only work in PHP 4.3.0+ Tag Handlers

function Parser::packageTagHandler($word) [line 1926]Function Parameters:

string $word

handles @package Tag Handlers

Tutorial @package

function Parser::paramTagHandler($word) [line 2103]Function Parameters:

string $word

handles @param Tag Handlers

Tutorial @param

Page 329 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 377: PhpDocumentor 1.2.2 Manual

bool function Parser::parse(&$parse_data, $path, [$base = 0], [$packages = false]) [line 437]Function Parameters:

string $parse_data string $path int $base number of directories to drop off the bottom when creating names using path

Parse a new file

Static Variable Used integer $endrecur: used for recursion limiting if a handler for an event is notfound

function Parser::returnTagHandler($word) [line 2139]Function Parameters:

string $word

handles @return Tag Handlers

Tutorial @return

function Parser::setupStates() [line 2491]setup the parser tokens, and the pushEvent/popEvent arrays

See Publisher::$tokens, Publisher::$pushEvent, Publisher::$popEvent

Page 330 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 378: PhpDocumentor 1.2.2 Manual

function Parser::staticvarTagHandler($word) [line 2045]Function Parameters:

string $word

handles @staticvar Tag Handlers

Tutorial @staticvar

function Parser::usesTagHandler($word) [line 2081]Function Parameters:

string $word

handles @uses Tag Handlers

Tutorial @uses

function Parser::varTagHandler($word) [line 2163]Function Parameters:

string $word

handles @var

Page 331 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 379: PhpDocumentor 1.2.2 Manual

Tag Handlers

Tutorial @var

Class parserDescParser [line 286]

Parses a DocBlock description to retrieve abstract representations of <pre>,<code>,<p>,<ul>,<ol>,li>>,<b>,<i>

Package phpDocumentor Sub-Package Parsers Version $Id: Parser.inc,v 1.183.2.7 2003/08/19 15:47:14 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]> Tutorial http://phpdocu.sourceforge.net Tutorial

Constructor function parserDescParser::parserDescParser() [line 337]sets $wp to be a ObjectWordParser

$wp is the word parser that retrieves tokens

function parserDescParser::addText($text) [line 507]Function Parameters:

string|parserInlineTag $text

Page 332 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 380: PhpDocumentor 1.2.2 Manual

add input as text to the current paragraph or list

function parserDescParser::defaultHandler($word, $pevent) [line 453]basic handling

This function checks to see if the first thing in a description is the <p> tag. If so, itwill switch into a mode of parsing out paragraphs by <p> instead of a double line-break

It also removes extra whitespace

Uses parserDescParser::doSimpleList()

boolean function parserDescParser::doSimpleList($word) [line 1153]Function Parameters:

string $word line that may contain a simple list

Return a simple list, if found This helper function extracts a simple list beginning with any of 'o','-'.'#','+','0','1','0.','1.'

and starts parsing it.

Usedby parserDescParser::defaultHandler()

function parserDescParser::dropContext() [line 487]Pop a context off of the context stack

Uses $_context

Page 333 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 381: PhpDocumentor 1.2.2 Manual

function parserDescParser::getContext() [line 477]Retrieve the current top-level tag to add text into

Uses $_context

function parserDescParser::getParserEventName($value) [line 1426] function parserDescParser::parse(&$parse_data, [$sdesc = false], [$ind_type = 'parserDesc']) [line 351]

Function Parameters:

array &$parse_data array of strings or parserInlineTags boolean $sdesc true if the description is a short description. (only 1 paragraph allowed in shortdesc) string $ind_type name of the class to instantiate for each paragraph. parserDesc fordesc/sdesc, parserStringWithInlineTags for tag data

Parse a long or short description for tags

Static Variable Used integer $endrecur: used for recursion limiting if a handler for an event is notfound Usedby parserDocBlock::postProcess()

function parserDescParser::setContext($context) [line 498]Function Parameters:

string $context context name

Uses $_context

Page 334 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 382: PhpDocumentor 1.2.2 Manual

function parserDescParser::setupStates($sdesc) [line 1196]Function Parameters:

boolean $sdesc determines whether to allow paragraph parsing

setup the parser tokens, and the pushEvent/popEvent arrays

Global Variable Used boolean 0: used to determine whether to slow things down or not by eliminating whitespace from comments See Publisher::$tokens, Publisher::$pushEvent, Publisher::$popEvent

Class phpDocumentorTParser [line 33]

Tokenizer-based parser for PHP source code

Package phpDocumentor Sub-Package Parsers Version $Revision: 1.48.2.13 $ Author Gregory Beaver < mailto:[email protected]>

phpDocumentorTParser::$eventHandlers

mixed = array( PARSER_EVENT_ARRAY => 'handleArray', PARSER_EVENT_CLASS => 'handleClass', PARSER_EVENT_COMMENT => 'handleComment',

Page 335 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 383: PhpDocumentor 1.2.2 Manual

PARSER_EVENT_DOCBLOCK_TEMPLATE => 'handleDocBlockTemplate', PARSER_EVENT_END_DOCBLOCK_TEMPLATE => 'handleEndDocBlockTemplate', PARSER_EVENT_LOGICBLOCK => 'handleLogicBlock', PARSER_EVENT_NOEVENTS => 'defaultHandler', PARSER_EVENT_OUTPHP => 'defaultHandler', PARSER_EVENT_DEFINE => 'handleDefine', PARSER_EVENT_DEFINE_PARAMS => 'handleDefineParams', PARSER_EVENT_DEFINE_PARAMS_PARENTHESIS =>'handleDefineParamsParenthesis', PARSER_EVENT_INCLUDE_PARAMS_PARENTHESIS =>'handleIncludeParamsParenthesis', PARSER_EVENT_DOCBLOCK => 'handleDocBlock', PARSER_EVENT_TAGS => 'handleTags', PARSER_EVENT_DESC => 'handleDesc', PARSER_EVENT_DOCKEYWORD => 'handleTag', PARSER_EVENT_DOCKEYWORD_EMAIL => 'handleDockeywordEmail', PARSER_EVENT_EOFQUOTE => 'handleEOFQuote', PARSER_EVENT_FUNCTION => 'handleFunction', PARSER_EVENT_FUNCTION_PARAMS => 'handleFunctionParams', PARSER_EVENT_FUNC_GLOBAL => 'handleFuncGlobal', PARSER_EVENT_DEFINE_GLOBAL => 'handleGlobal', PARSER_EVENT_GLOBAL_VALUE => 'handleGlobalValue', PARSER_EVENT_INLINE_DOCKEYWORD => 'handleInlineDockeyword', PARSER_EVENT_INCLUDE => 'handleInclude', PARSER_EVENT_INCLUDE_PARAMS => 'handleIncludeParams', PARSER_EVENT_QUOTE => 'handleQuote', PARSER_EVENT_PHPCODE => 'handlePhpCode', PARSER_EVENT_SINGLEQUOTE => 'handleSingleQuote', PARSER_EVENT_STATIC_VAR => 'handleStaticVar', PARSER_EVENT_STATIC_VAR_VALUE => 'handleStaticValue', PARSER_EVENT_VAR => 'handleVar', ) [line 118]

phpDocumentorTParser::$inlineTagHandlers

mixed = array( '*' => 'handleDefaultInlineTag', 'link' => 'handleLinkInlineTag', ) [line 153]

phpDocumentorTParser::$source_location

string = [line 117]

relative path of the parsed file from the base parse directory

Constructor function phpDocumentorTParser::phpDocumentorTParser() [line 158]mixed function phpDocumentorTParser::checkEventPop($word, $pevent) [line 2004]

this function checks whether parameter $word is a token for popping the current eventoff of the Event Stack.

mixed function phpDocumentorTParser::checkEventPush($word, $pevent) [line 1972]this function checks whether parameter $word is a token for pushing a new event onto

the Event Stack.

Page 336 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 384: PhpDocumentor 1.2.2 Manual

function phpDocumentorTParser::configWordParser(&$data) [line 2343] function phpDocumentorTParser::getToken($word) [line 2025]bool function phpDocumentorTParser::parse(&$parse_data, $path, [$base = 0], [$packages = false]) [line 178]

Function Parameters:

string $parse_data string $path int $base number of directories to drop off the bottom when creating names using path

Parse a new file

Static Variable Used integer $endrecur: used for recursion limiting if a handler for an event is notfound

function phpDocumentorTParser::setupEventStates() [line 2088]Creates the state arrays

function phpDocumentorTParser::setupStates() [line 2036]setup the parser tokens, and the pushEvent/popEvent arrays

See Publisher::$tokens, Publisher::$pushEvent, Publisher::$popEvent

Class phpDocumentor_HighlightParser [line 160]

Highlights source code using parse()

Page 337 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 385: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Sub-Package Parsers Usedby parserExampleTag::ConvertSource() - highlights source code Usedby parserFileSourceTag::ConvertSource() - highlights source code Usedby parserSourceInlineTag::arrayConvert() - Parses the tokenized source Version $Revision: 1.48.2.13 $ Author Gregory Beaver < mailto:[email protected]>

phpDocumentor_HighlightParser::$eventHandlers

array = array( PARSER_EVENT_ARRAY => 'defaultHandler', PARSER_EVENT_CLASS => 'handleClass', PARSER_EVENT_COMMENT => 'handleComment', PARSER_EVENT_DOCBLOCK_TEMPLATE => 'handleDocBlockTemplate', PARSER_EVENT_END_DOCBLOCK_TEMPLATE => 'handleEndDocBlockTemplate', PARSER_EVENT_LOGICBLOCK => 'handleLogicBlock', PARSER_EVENT_METHOD_LOGICBLOCK => 'handleMethodLogicBlock', PARSER_EVENT_NOEVENTS => 'defaultHandler', PARSER_EVENT_OUTPHP => 'defaultHandler', PARSER_EVENT_CLASS_MEMBER => 'handleClassMember', PARSER_EVENT_DEFINE => 'defaultHandler', PARSER_EVENT_DEFINE_PARAMS => 'defaultHandler', PARSER_EVENT_DEFINE_PARAMS_PARENTHESIS => 'defaultHandler', PARSER_EVENT_INCLUDE_PARAMS_PARENTHESIS => 'defaultHandler', PARSER_EVENT_DOCBLOCK => 'handleDocBlock', PARSER_EVENT_TAGS => 'handleTags', PARSER_EVENT_DESC => 'handleDesc', PARSER_EVENT_DOCKEYWORD => 'handleTag', PARSER_EVENT_DOCKEYWORD_EMAIL => 'handleDockeywordEmail', PARSER_EVENT_EOFQUOTE => 'handleEOFQuote', PARSER_EVENT_FUNCTION => 'handleFunction', PARSER_EVENT_METHOD => 'handleMethod', PARSER_EVENT_FUNCTION_PARAMS => 'handleFunctionParams', PARSER_EVENT_FUNC_GLOBAL => 'handleFuncGlobal', PARSER_EVENT_INLINE_DOCKEYWORD => 'handleInlineDockeyword', PARSER_EVENT_INCLUDE => 'defaultHandler', PARSER_EVENT_INCLUDE_PARAMS => 'defaultHandler', PARSER_EVENT_QUOTE => 'handleQuote', PARSER_EVENT_QUOTE_VAR => 'handleQuoteVar', PARSER_EVENT_PHPCODE => 'handlePhpCode', PARSER_EVENT_SINGLEQUOTE => 'handleSingleQuote', PARSER_EVENT_STATIC_VAR => 'defaultHandler', PARSER_EVENT_STATIC_VAR_VALUE => 'defaultHandler', PARSER_EVENT_VAR => 'handleVar', ) [line 186]

phpDocumentor_HighlightParser::$tagHandlers

Page 338 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 386: PhpDocumentor 1.2.2 Manual

mixed = array( '*' => 'defaultTagHandler', 'abstract' => 'coreTagHandler', 'access' => 'coreTagHandler', 'author' => 'coreTagHandler', 'category' => 'coreTagHandler', 'copyright' => 'coreTagHandler', 'deprecated' => 'coreTagHandler', 'example' => 'coreTagHandler', 'filesource' => 'coreTagHandler', 'final' => 'coreTagHandler', 'global' => 'globalTagHandler', 'ignore' => 'coreTagHandler', 'license' => 'coreTagHandler', 'link' => 'coreTagHandler', 'name' => 'coreTagHandler', 'package' => 'coreTagHandler', 'param' => 'paramTagHandler', 'parameter' => 'paramTagHandler', 'see' => 'coreTagHandler', 'since' => 'coreTagHandler', 'subpackage' => 'coreTagHandler', 'internal' => 'coreTagHandler', 'return' => 'returnTagHandler', 'static' => 'coreTagHandler', 'staticvar' => 'staticvarTagHandler', 'throws' => 'coreTagHandler', 'todo' => 'coreTagHandler', 'tutorial' => 'coreTagHandler', 'uses' => 'coreTagHandler', 'var' => 'varTagHandler', 'version' => 'coreTagHandler', ) [line 227]

event handlers for @tags

Tutorial phpDocumentor tags

phpDocumentor_HighlightParser::$_converter

Converter = [line 177]

Used to retrieve highlighted tokens

Var a descendant of Converter

Page 339 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 387: PhpDocumentor 1.2.2 Manual

phpDocumentor_HighlightParser::$_filesourcepath

false|string = [line 182]

Path to file being highlighted, if this is from a @filesource tag

Var full path

phpDocumentor_HighlightParser::$_line

string = [line 172]

contents of the current source code line as it is parsed

phpDocumentor_HighlightParser::$_output

string = [line 167]

Highlighted source is built up in this string

Constructor function phpDocumentor_HighlightParser::phpDocumentor_HighlightParser() [line 1958]Initialize the $tokenpushEvent, $wordpushEvent arrays

function phpDocumentor_HighlightParser::configWordParser(&$data) [line 1874]Function Parameters:

array &$data all tokens separated by line number

Give the word parser necessary data to begin a new parse

Usedby phpDocumentor_HighlightParser::parse() - pass $parse_data to prepare retrieval oftokens

Page 340 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 388: PhpDocumentor 1.2.2 Manual

function phpDocumentor_HighlightParser::newLineNum() [line 266]

Uses Converter::SourceLine() - encloses $_line in a converter-specific format

bool function phpDocumentor_HighlightParser::parse(&$parse_data, &$converter, [$inlinesourceparse = false],[$class = false], [$linenum = false], [$filesourcepath = false]) [line 314]

Function Parameters:

array $parse_data Converter $converter boolean $inlinesourceparse whether this data is from an inline {@source} tag string|false $class if a string, it is the name of the class whose method we are parsingcontaining a {@source} tag false|integer $linenum starting line number from {@source linenum} false|string $filesourcepath full path to file with @filesource tag, if this is a @filesourceparse

Parse a new file The parse() method is a do...while() loop that retrieves tokens one by one from the

$_event_stack, and uses the token event array set up by the class constructor to call eventhandlers.

The event handlers each process the tokens passed to them, and use the _addoutput()method to append the processed tokens to the $_line variable. The word parser callsnewLineNum() every time a line is reached.

In addition, the event handlers use special linking functions _link() and its cousins(_classlink(), etc.) to create in-code hyperlinks to the documentation for source codeelements that are in the source code.

Static Variable Used integer $endrecur: used for recursion limiting if a handler for an event is not found

Page 341 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 389: PhpDocumentor 1.2.2 Manual

Uses phpDocumentor_HighlightParser::configWordParser() - pass $parse_data to prepareretrieval of tokens Uses phpDocumentor_HighlightParser::setupStates() - initialize parser state variables

function phpDocumentor_HighlightParser::setLineNum($num) [line 277]Start the parsing at a certain line number

function phpDocumentor_HighlightParser::setupStates($inlinesourceparse, $class) [line 1887]Function Parameters:

boolean $inlinesourceparse true if we are highlighting an inline {@source} tag's output false|string $class name of class we are going to start from

Initialize all parser state variables

Usedby phpDocumentor_HighlightParser::parse() - initialize parser state variables Uses $_wp - sets to a new phpDocumentor_HighlightWordParser

function phpDocumentor_HighlightParser::_retrieveType($value, $state, $checkforvar) [line 1529]

Class phpDocumentor_HighlightWordParser [line 43]

Retrieve tokens from an array of tokens organized by line numbers

Package phpDocumentor Sub-Package Parsers

Page 342 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 390: PhpDocumentor 1.2.2 Manual

Version $Id: WordParser.inc,v 1.27.2.1 2003/06/03 05:44:52 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Since 1.2.0beta3

function phpDocumentor_HighlightWordParser::backupPos($last_token, [$is_pos = false]) [line 132]Function Parameters:

array|string $last_token token, or output from nextToken() boolean $is_pos if true, backupPos interprets $last_token to be the position in theinternal token array of the last token

back the word parser to the previous token as defined by $last_token

array|string function phpDocumentor_HighlightWordParser::getWord() [line 112]Retrieve the next token

array function phpDocumentor_HighlightWordParser::nextToken() [line 94]Retrieve the position of the next token that will be parsed

in the internal token array

function phpDocumentor_HighlightWordParser::setup(&$input, &$parser) [line 55]Function Parameters:

array &$input phpDocumentor_HighlightParser &$parser

Class ppageParser [line 2882]

Global package page parser

Page 343 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 391: PhpDocumentor 1.2.2 Manual

Package phpDocumentor Sub-Package Parsers Version $Id: Parser.inc,v 1.183.2.7 2003/08/19 15:47:14 CelloG Exp $ Author Gregory Beaver < mailto:[email protected]> Author Joshua Eichorn < mailto:[email protected]> Tutorial phpDocumentor Tutorials Deprecated in favor of tutorials

ppageParser::$package

string = false [line 2885]

ppageParser::$subpackage

string = '' [line 2887]

Constructor function ppageParser::ppageParser() [line 2891]set up invariant Parser variables

function ppageParser::defaultHandler($word, $pevent) [line 3003]Function Parameters:

string $word token integer $pevent parser event

Handles all non-inline tags

function ppageParser::handleInlineDockeyword($word, $pevent) [line 3019]Function Parameters:

string $word token integer $pevent parser event

handler for INLINE_DOCKEYWORD.

Page 344 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 392: PhpDocumentor 1.2.2 Manual

this handler recognizes {@inline tags} like link, and parses them, replacing them directly in the text flow with their output.

mixed function ppageParser::parse(&$parse_data, $xml, [$package = 'default'], [$subpackage = ''], [$tutorial = ''],[$category = 'default']) [line 2927]

Function Parameters:

string $parse_data string $package int $subpackage

Parse a new file

function ppageParser::setupStates() [line 2903]set up invariant Parser variables

Class XMLPackagePageParser [line 54]

Used to parse XML DocBook-based tutorials

Package phpDocumentor Sub-Package Parsers Version $Id: Parser.inc,v 1.183.2.7 2003/08/19 15:47:14 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]>

XMLPackagePageParser::$context

array = [line 78]

Page 345 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 393: PhpDocumentor 1.2.2 Manual

Var the tag stack

XMLPackagePageParser::$eventHandlers

mixed = array( PHPDOCUMENTOR_PDP_EVENT_TAG => 'handleTag', PHPDOCUMENTOR_PDP_EVENT_ATTRIBUTES => 'handleAttributes', PHPDOCUMENTOR_PDP_EVENT_CDATA => 'handleCData', PARSER_EVENT_NOEVENTS => 'defaultHandler', PARSER_EVENT_COMMENTBLOCK => 'ignoreHandler', PARSER_EVENT_OUTPHP => 'ignoreHandler', PARSER_EVENT_QUOTE => 'handleQuote', PHPDOCUMENTOR_PDP_EVENT_ENTITY => 'handleEntity', ) [line 56]

XMLPackagePageParser::$pars

array = array() [line 70]

XMLPackagePageParser::$refsect1id

mixed = false [line 72]

XMLPackagePageParser::$refsect2id

mixed = false [line 73]

XMLPackagePageParser::$refsect3id

mixed = false [line 74]

XMLPackagePageParser::$_cursection

mixed = 0 [line 82]

XMLPackagePageParser::$_gettoc

mixed = false [line 80]

XMLPackagePageParser::$_toc

mixed = array() [line 81]

Constructor function XMLPackagePageParser::XMLPackagePageParser() [line 90]Set up the wordparser

1 function XMLPackagePageParser()2 {3 $this-> wp = new ObjectWordParser(true);4 }

Page 346 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 394: PhpDocumentor 1.2.2 Manual

Uses ObjectWordParser

function XMLPackagePageParser::getParserEventName($value) [line 531]debugging function

1 function getParserEventName ($value)2 { 3 $lookup = array(4 PARSER_EVENT_NOEVENTS =>"PARSER_EVENT_NOEVENTS" ,5 PHPDOCUMENTOR_PDP_EVENT_TAG =>"PHPDOCUMENTOR_PDP_EVENT_TAG" ,6 PHPDOCUMENTOR_PDP_EVENT_ATTRIBUTES =>"PHPDOCUMENTOR_PDP_EVENT_ATTRIBUTES" ,7 PHPDOCUMENTOR_PDP_EVENT_CDATA =>"PHPDOCUMENTOR_PDP_EVENT_CDATA" ,8 PHPDOCUMENTOR_PDP_EVENT_LIST =>"PHPDOCUMENTOR_PDP_EVENT_LIST" ,9 PARSER_EVENT_QUOTE => "PARSER_EVENT_QUOTE" ,10 PHPDOCUMENTOR_PDP_EVENT_ENTITY =>"PHPDOCUMENTOR_PDP_EVENT_ENTITY" ,11 );12 if (isset( $lookup[$value]))13 return $lookup[$value];14 else return $value;15 }

Static

bool function XMLPackagePageParser::parse($parse_data, $tutorial) [line 105]Function Parameters:

string $parse_data array $tutorial for format, see Io::getTutorials()

Page 347 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 395: PhpDocumentor 1.2.2 Manual

Parse a new file

Static Variable Used integer $endrecur: used for recursion limiting if a handler for an event is notfound Uses parserTutorial - using Publisher::PublishEvent(), a new tutorial is created from the file parsed, and passed to the Intermediate Parser

function XMLPackagePageParser::setupStates() [line 457]setup the parser tokens, and the pushEvent/popEvent arrays

See Publisher::$tokens, Publisher::$pushEvent, Publisher::$popEvent

Page 348 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 396: PhpDocumentor 1.2.2 Manual

find_phpdoc.phpUtility file: used to find location of phpDocumentor

Package phpDocumentor Sub-Package setup Filesource Source Code for this file

include '' [line 29]

Dummy value

Page 349 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 397: PhpDocumentor 1.2.2 Manual

PackagePageElements.incData structures used in parsing XML DocBook-based tutorials

Conversion of DocBook-based tutorials is performed using special Converter classmethods. By default, these methods simply retrieve simple rules for replacement of tags andslight re-ordering from the options.ini file present for every template.

In future versions, there may be utilization of xslt or other more powerful protocols. However,for most situations, the power of these classes will be more than sufficient to handle verycomplex documentation.

Note that an entire tutorial is contained in a single parserXMLDocBookTag, matching thedocument model for DocBook. The top-level tag, <refentry>, contains every other tagand all text.

Package phpDocumentor Sub-Package Tutorial Tutorial phpDocumentor Tutorials

Class parserCData [line 46]

Represents <![CDATA[ ]]> sections. These sections are interpreted as plain text

Package phpDocumentor Sub-Package Tutorial Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]>

Page 350 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 398: PhpDocumentor 1.2.2 Manual

function parserCData::Convert(&$c, [$postprocess = true]) [line 52]Function Parameters:

Converter &$c

Uses Converter::getCData() - convert contents to text

Class parserEntity [line 354]

a standard entity like &rdquo; This class is designed to represent all DocBook entities.

Package phpDocumentor Sub-Package Tutorial Since 1.2

Constructor function parserEntity::parserEntity($name) [line 359]Function Parameters:

string $name entity name

string function parserEntity::Convert(&$c, [$postprocess = true]) [line 369]Function Parameters:

Page 351 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 399: PhpDocumentor 1.2.2 Manual

Converter &$c

Uses Converter::TranslateEntity() - convert contents to text

Class parserXMLDocBookTag [line 76]

a standard XML DocBook Tag This class is designed to represent all DocBook tags. It is intelligent enough to

understand the <title> tag, and also the <refname> tag for as title for <refentry>

Package phpDocumentor Sub-Package Tutorial Version $Id: ParserData.inc,v 1.79.2.3 2003/08/13 20:18:55 CelloG Exp $ Author Greg Beaver < mailto:[email protected]> Since 1.2

parserXMLDocBookTag::$attributes

array = array() [line 84]

Attributes from the XML tag Format: array(attrname => attrvalue, attrname => attrvalue,...)

parserXMLDocBookTag::$name

string = [line 89]

Page 352 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 400: PhpDocumentor 1.2.2 Manual

Name of the tag

parserXMLDocBookTag::$_cdata

parserCData = [line 92]

parserXMLDocBookTag::$_description

parserTag = [line 101]

Set to <refpurpose> in <refsynopsisdiv>

parserXMLDocBookTag::$_id

parserIdLineTag = [line 96]

parserXMLDocBookTag::$_title

parserTag = [line 94]

Constructor function parserXMLDocBookTag::parserXMLDocBookTag($name) [line 106]Function Parameters:

string $name tag name

function parserXMLDocBookTag::add($el) [line 333]Function Parameters:

parserEntity|parserCData|parserXMLDocBookTag|string $el nested tag, entity, or text

Add contents to this tag. There are four kinds of data in a DocBook tutorial:

1. tags - normal tags like <refentry>2. entities - normal entities like &rdquo;3. <![CDATA[ - character data that should not be interpreted,

like <programlisting> contents4. text - normal non-markup text

All four kinds of data are added here

function parserXMLDocBookTag::addAttribute($name, $value) [line 189]Function Parameters:

Page 353 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 401: PhpDocumentor 1.2.2 Manual

string $name attribute name string|parserIdInlineTag $value value of attribute

Add an xml tag attribute name="value" pair if the attribute is id, value must be a parserIdInlineTag

function parserXMLDocBookTag::addCData($word) [line 177]Function Parameters:

string $word

add a word to CData

function parserXMLDocBookTag::Convert(&$c, [$postprocess = true]) [line 117]Function Parameters:

Converter &$c boolean $postprocess

Uses Converter::TranslateTag() - Calls this to enclose the contents of the DocBook tag based on the values in template options.ini file

function parserXMLDocBookTag::endCData() [line 144]Adds $_cdata to $value

string function parserXMLDocBookTag::getId(&$c) [line 232]Function Parameters:

Converter &$c

Return converter-specific formatting of ID.

Page 354 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 402: PhpDocumentor 1.2.2 Manual

Passes $c to parserIdInlineTag::Convert()

function parserXMLDocBookTag::getSubsection(&$c, $subsection) [line 297]Function Parameters:

Converter &$c string $subsection converter-specific subsection

Retrieve the contents of a subsection This method uses the $_id members of nested docbook tags to retrieve the section

defined by $subsection

string function parserXMLDocBookTag::getTitle(&$c) [line 251]Function Parameters:

Converter &$c

Retrieve Converter-specific formatting of the title of this element

function parserXMLDocBookTag::getTOC([$state = false]) [line 158]Function Parameters:

false|integer $state either an index of the {@toc} tag in $this->value or false, ifthe next index value of $this->value is needed

Retrieve either the table of contents index, or the location that the TOC will go

See parserXMLDocBookTag::setTOC()

Page 355 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 403: PhpDocumentor 1.2.2 Manual

boolean function parserXMLDocBookTag::hasTitle() [line 241]Determine whether the docbook element has a title

function parserXMLDocBookTag::setId($id) [line 220]Function Parameters:

parserIdInlineTag $id

If the id attribute is present, this method will set its id

function parserXMLDocBookTag::setTitle($title) [line 211]Function Parameters:

parserXMLDocBookTag $title the title element

Set the title of a DocBook tag section. For most DocBook tags, the title is represented with a <title></title> tag pair.

The <refentry> top-level tag is a little different. Instead of using <title></title>,phpDocumentor uses the contents of the <refname> tag in the <refnamediv> tag

function parserXMLDocBookTag::setTOC($state, $val) [line 168]Function Parameters:

integer $state index of the TOC in $this->value parserTocInlineTag $val

function parserXMLDocBookTag::startCData() [line 136]Begin a new CData section

See parserXMLDocBookTag::addCData()

Page 356 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 404: PhpDocumentor 1.2.2 Manual

phpDocumentorTWordParser.inc

Package phpDocumentor Sub-Package WordParsers Since 1.2 Author Greg Beaver < mailto:[email protected]>

Page 357 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 405: PhpDocumentor 1.2.2 Manual

WordParser.inc

Package phpDocumentor Sub-Package WordParsers Version $Id: WordParser.inc,v 1.27.2.1 2003/06/03 05:44:52 CelloG Exp $ Author Joshua Eichorn < mailto:[email protected]>

Class ObjectWordParser [line 118]

Like WordParser but designed to handle an array with strings and parserInlineTags

Package phpDocumentor Sub-Package WordParsers Usedby XMLPackagePageParser::XMLPackagePageParser() Version $Id: WordParser.inc,v 1.27.2.1 2003/06/03 05:44:52 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]>

Constructor function ObjectWordParser::ObjectWordParser([$casesensitive = false]) [line 126] function ObjectWordParser::getWord() [line 154]boolean function ObjectWordParser::nextIsObjectOrNonNL() [line 269]

Determine if the next word is an inline tag

function ObjectWordParser::setup(&$input) [line 137]Function Parameters:

Page 358 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 406: PhpDocumentor 1.2.2 Manual

array &$input parserStringWithInlineTags::$value style-array, with alternating text andinline tags

Set the word parser to go.

Class phpDocumentorTWordParser [line 34]

Like WordParser, but expects an array of tokens from the tokenizer instead of a string.

Package phpDocumentor Sub-Package WordParsers Version $Id: WordParser.inc,v 1.27.2.1 2003/06/03 05:44:52 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]>

function phpDocumentorTWordParser::addFileSource($word) [line 212]Function Parameters:

array $word full file source code

Wrapper for addSource() used to retrieve the entire source code organized by line number in setup()

function phpDocumentorTWordParser::addSource($word, [$file = false], 2) [line 232]Function Parameters:

array|string 2 next token, for lookahead splitting

Page 359 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 407: PhpDocumentor 1.2.2 Manual

array|string $word token to add boolean $file true if this should be added to $_file_source

Generate source token arrays organized by line number This code will split up tokens that contain "\n" and add them to the source

code as separate tokens on different lines.

Uses _set_sars()

function phpDocumentorTWordParser::backupPos() [line 294] function phpDocumentorTWordParser::concatTokens($a) [line 138]

Utility function to convert a series of tokens into a string

Static

function phpDocumentorTWordParser::findGlobal($tokens) [line 285]Function Parameters:

array $tokens tokens that represent the global variable definition

Tell the phpDocumentorTWordParser to return the entire global variable if it is found.

Uses $_global_search

array function phpDocumentorTWordParser::getFileSource() [line 106]

Page 360 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 408: PhpDocumentor 1.2.2 Manual

Usedby parserExampleTag::parserExampleTag() - uses to parse an example and retrieve all tokens by line number

array function phpDocumentorTWordParser::getSource() [line 95]string|array function phpDocumentorTWordParser::getWord() [line 161]

Retrieve a token for the phpDocumentorTParser

function phpDocumentorTWordParser::setup(&$input) [line 79]Uses http://www.php.net/token_get_all to tokenize the source code.

Var source code

function phpDocumentorTWordParser::tokenEquals($a, $b) [line 127]Utility function to determine whether two tokens from the tokenizer are equal

Static

Class WordParser [line 34]

Retrieves tokens from source code for use by the Parser

Package phpDocumentor Sub-Package WordParsers Version $Id: WordParser.inc,v 1.27.2.1 2003/06/03 05:44:52 CelloG Exp $

Page 361 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 409: PhpDocumentor 1.2.2 Manual

Author Joshua Eichorn < mailto:[email protected]> See Parser

function WordParser::backupPos($word) [line 310]Function Parameters:

string $word token to back up to

Backup to the previous token so that it can be retrieved again in a new context. Occasionally, a word will be passed to an event handler that should be handled by

another event handler. This method allows that to happen.

function WordParser::getBlock($start, $len) [line 279]Function Parameters:

integer $start starting position integer $len length of block to retrieve

Unused 1 function getBlock($start,$len)

2 {3 return substr($this-> data,$start,$len);4 }

function WordParser::getPos() [line 267]Returns the current pointer position, or 1 character after the end of the word

string function WordParser::getSource() [line 123]Retrieve source code for the last function/method

string|false function WordParser::getWord() [line 175]Retrieve a token from the token list

The Parser class relies upon this method to retrieve the next token. The$wordseperators array is a collection of strings that delineate tokens for the current parserstate. $wordseperators is set by the parser with a call to Parser::configWordParser() every

Page 362 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 410: PhpDocumentor 1.2.2 Manual

time a new parser state is reached.

For example, while parsing the source code for a class, the word 1 var

is a token, and 1 global

is not, but inside a function, the reverse is true. The parser state PARSER_STATE_CLASS has a token list thatincludes whitespace, code delimiters like ; and {}, and comment/DocBlock indicators

If the whitespace option has been turned off using setWhitespace(), then no whitespace is returned with tokens

function WordParser::setPos($pos) [line 297]Function Parameters:

integer $pos

Set the internal cursor within the source code

function WordParser::setSeperator(&$seps) [line 288]Function Parameters:

array &$seps array of strings that separate tokens

Uses $wordseperators

function WordParser::setup(&$input) [line 107]Function Parameters:

string &$input source code

Initialize the WordParser

function WordParser::setWhitespace([$val = false]) [line 320]Function Parameters:

Page 363 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 411: PhpDocumentor 1.2.2 Manual

boolean $val

set parser to return or strip whitespace

Page 364 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 412: PhpDocumentor 1.2.2 Manual

Page 365 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 413: PhpDocumentor 1.2.2 Manual

Package Converters Procedural Elements

Converter.incBase class for all output converters.

Package Converters Version $Id: Converter.inc,v 1.198.2.20 2003/08/13 20:01:51 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

string function adv_htmlentities($s) [line 4685]Function Parameters:

string $s

smart htmlentities, doesn't entity the allowed tags list Since version 1.1, this function uses htmlspecialchars instead of htmlentities, for

international support This function has been replaced by functionality inParserDescCleanup.inc

Deprecated As of v1.2, No longer needed, as valid tags are parsed out of the source, andeverything else is Converter::postProcess() handled

include_once "phpDocumentor/Smarty-2.5.0/libs/Smarty.class.php" [line 30]

Page 366 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 414: PhpDocumentor 1.2.2 Manual

Smarty template files

Page 367 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 415: PhpDocumentor 1.2.2 Manual

Package Converters Classes

Class Converter [line 61]

Base class for all output converters. The Converter marks the final stage in phpDocumentor. phpDocumentor works in this

order:

Parsing => Intermediate Parsing organization => Conversion to output

A Converter takes output from the phpDocumentor_IntermediateParser and converts it tooutput. With version 1.2, phpDocumentor includes a variety of output converters:

HTMLframesConverterHTMLSmartyConverterPDFdefaultConverterCHMdefaultConverterCSVdia2codeConverterXMLDocBookConverter

Package Converters Version $Id: Converter.inc,v 1.198.2.20 2003/08/13 20:01:51 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Abstract Element

Converter::$all_packages

Page 368 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 416: PhpDocumentor 1.2.2 Manual

array = [line 341]

All packages encountered in parsing

See phpDocumentor_IntermediateParser::$all_packages

Converter::$class

string|false = false [line 86]

set to a classname if currently parsing a class, false if not

Converter::$classes

Classes = [line 300]

All class information, organized by path, and by package

Converter::$class_contents

array = array() [line 250]

alphabetical index of all methods and vars in a class by package/subpackage The class itself has a link under ###main

Var Format: array(package => array(subpackage => array(path => array(class => array( descendant 1, ... ) ) ) ) See Converter::formatLeftIndex()

Page 369 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 417: PhpDocumentor 1.2.2 Manual

Converter::$class_data

Smarty = [line 146]

template for the class currently being processed

Converter::$class_elements

array = array() [line 189]

alphabetized index of classes by package

Var Format: array(package => array(subpackage => array( classLink 1,classLink 2,...) See Converter::$leftindex

Converter::$curfile

mixed = [line 294]

full path of the current file being converted

Converter::$curpage

parserPage = [line 152]

current procedural page being processed

Converter::$define_elements

array = array() [line 182]

alphabetized index of defines by package

Var Format: array(package => array(subpackage => array( defineLink 1,defineLink 2,...) See Converter::$leftindex

Converter::$elements

Page 370 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 418: PhpDocumentor 1.2.2 Manual

array = array() [line 168]

alphabetical index of all elements

Var Format: array(first letter of element name => array( parserElement or parserPage,...)) See Converter::formatIndex(), HTMLframesConverter::formatIndex()

Converter::$function_elements

array = array() [line 203]

alphabetized index of functions by package

Var Format: array(package => array(subpackage => array( functionLink 1,functionLink 2,...) See Converter::$leftindex

Converter::$global_elements

array = array() [line 196]

alphabetized index of global variables by package

Var Format: array(package => array(subpackage => array( globalLink 1,globalLink 2,...) See Converter::$leftindex

Converter::$leftindex

array = array('classes' => true, 'pages' => true, 'functions' => true, 'defines' => true, 'globals' => true) [line359]

Controls which of the one-element-only indexes are generated.

Page 371 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 419: PhpDocumentor 1.2.2 Manual

Generation of these indexes for large packages is time-consuming. This is anoptimization feature. An example of how to use this is in HTMLframesConverter::$leftindex,and in HTMLframesConverter::formatLeftIndex(). These indexes are intended for use asnavigational aids through documentation, but can be used for anything by converters.

See Converter::formatLeftIndex() See Converter::$class_elements, Converter::$page_elements, Converter::$function_elements,Converter::$define_elements, Converter::$global_elements

Converter::$outputformat

string = 'Generic' [line 71]

output format of this converter in Child converters, this will match the first part of the -o command-line as in -o

HTML:frames:default "HTML"

Tutorial http://phpdocu.sourceforge.net Tutorial

Converter::$package

string = 'default' [line 76]

package name currently being converted

Converter::$packagecategories

array = [line 334]

Packages associated with categories Used by the XML:DocBook/peardoc2 converter, and available to others, to group many

packages into categories

Page 372 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 420: PhpDocumentor 1.2.2 Manual

See phpDocumentor_IntermediateParser::$packagecategories

Converter::$package_elements

array = array() [line 161]

alphabetical index of all elements sorted by package, subpackage, page, and class.

Var Format: array(package => array(subpackage => array('page'|'class' =>array(path|classname => array(element, element,...))))) Uses Converter::$sort_absolutely_everything - if true, then $package_elements is used, otherwise, the ParserData::$classelements and ParserData::$pageelements variables are used

Converter::$package_output

mixed = [line 122]

set to value of -po commandline

Tutorial http://phpdocu.sourceforge.net Tutorial

Converter::$package_parents

array = [line 324]

Hierarchy of packages Every package that contains classes may have parent or child classes in other

packages. In other words, this code is legal:

In this case, package one is a parent of package two

Page 373 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 421: PhpDocumentor 1.2.2 Manual

See phpDocumentor_IntermediateParser::$package_parents

Converter::$page

string = [line 128]

name of current page being converted

Converter::$page_contents

array = array() [line 219]

alphabetical index of all elements on a page by package/subpackage The page itself has a link under ###main

Var Format: array(package => array(subpackage => array(path => array( abstractLinkdescendant 1, ...))) See Converter::formatLeftIndex()

Converter::$page_data

Smarty = [line 140]

template for the procedural page currently being processed

Converter::$page_elements

array = array() [line 175]

alphabetized index of procedural pages by package

Var Format: array(package => array(subpackage => array( pageLink 1,pageLink 2,...) See Converter::$leftindex

Page 374 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 422: PhpDocumentor 1.2.2 Manual

Converter::$parseprivate

bool = [line 257]

controls processing of elements marked private with @access private defaults to false. Set with command-line --parseprivate or -pp

Converter::$path

string = [line 134]

path of current page being converted

Converter::$pkg_elements

array = array() [line 210]

alphabetical index of all elements, indexed by package/subpackage

Var Format: array(first letter of element name => array( parserElement or parserPage,...)) See Converter::formatPkgIndex(), HTMLframesConverter::formatPkgIndex()

Converter::$quietmode

bool = [line 264]

controls display of progress information while parsing. defaults to false. Set to true for cron jobs or other situations where no visual output is

necessary

Converter::$smarty_dir

string = '' [line 282]

Directory that the smarty templates are in

Converter::$sort_absolutely_everything

Page 375 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 423: PhpDocumentor 1.2.2 Manual

mixed = false [line 232]

This is used if the content must be passed in the order it should be read, i.e. bypackage, procedural then classes This fixes bug 637921, and is used by PDFdefaultConverter

Usedby Converter::$package_elements - if true, then $package_elements is used, otherwise, the ParserData::$classelements and ParserData::$pageelements variables are used

Converter::$sort_page_contents_by_type

boolean = false [line 226]

This determines whether the $page_contents array should be sorted by element typeas well as alphabetically by name

See Converter::sortPageContentsByElementType()

Converter::$sourcePaths

array = array() [line 347]

A list of files that have had source code generated

Converter::$subpackage

string = '' [line 81]

subpackage name currently being converted

Converter::$targetDir

mixed = '' [line 270]

directory that output is sent to. -t command-line sets this.

Page 376 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 424: PhpDocumentor 1.2.2 Manual

Tutorial http://phpdocu.sourceforge.net Tutorial

Converter::$templateDir

string = '' [line 276]

Directory that the template is in, relative to phpDocumentor root directory

Converter::$templateName

string = '' [line 289]

Name of the template, from last part of -o

Tutorial http://phpdocu.sourceforge.net Tutorial

Converter::$template_options

array = [line 374]

Options for each template, parsed from the options.ini file in the template basedirectory

Tutorial phpDocumentor Tutorials

Converter::$title

string = 'Generated Documentation' [line 367]

See phpDocumentor_IntermediateParser::$title

Page 377 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 425: PhpDocumentor 1.2.2 Manual

Converter::$todoList

array = array() [line 404]

List of all @todo tags and a link to the element with the @todo Format: array(package => array(link to element, array(todo parserTag,...)),...)

Tutorial @todo

Constructor function Converter::Converter(&$allp, &$packp, &$classes, &$procpages, $po, $pp, $qm, $targetDir,$template, $title) [line 419]

Function Parameters:

array &$allp $all_packages value array &$packp $package_parents value Classes &$classes $classes value ProceduralPages &$procpages $proceduralpages value array $po $package_output value boolean $pp $parseprivate value boolean $qm $quietmode value string $targetDir $targetDir value string $template $templateDir value string $title (@link $title} value

Initialize Converter data structures

string function Converter::AttrToString($tag, $attr, [$unmodified = false]) [line 1097]Function Parameters:

string $tag tag name

Page 378 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 426: PhpDocumentor 1.2.2 Manual

attribute $attr array boolean $unmodified if true, returns attrname="value"...

Convert the attribute of a Tutorial docbook tag's attribute list to a string based on the template options.ini

string function Converter::Bolden($para) [line 748]Function Parameters:

string $para

Used to convert the contents of <b> in a docblock

Usedby parserB::Convert()

string function Converter::Br($para) [line 818]Function Parameters:

string $para

Used to convert <br> in a docblock

Usedby parserBr::Convert()

function Converter::checkState($state) [line 4647]Function Parameters:

mixed $state

Page 379 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 427: PhpDocumentor 1.2.2 Manual

Compare parserStringWithInlineTags::Convert() cache state to $state

Abstract Element See parserStringWithInlineTags::Convert()

function Converter::Convert(&$element) [line 3596]Function Parameters:

mixed &$element parserElement descendant or parserPackagePage or parserData

Convert all elements to output format This will call ConvertXxx where Xxx is http://www.php.net/ucfirst($element->type). It is

expected that a child converter defines a handler for every element type, even if that handlerdoes nothing. phpDocumentor will terminate with an error if a handler doesn't exist.

Throws PDERROR_NO_CONVERT_HANDLER

function Converter::convertClass(&$element) [line 3660]Default Class Handler

Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. Sets up theclass template.

function Converter::convertDefine(&$element, [$addition = array()]) [line 3888]Function Parameters:

parserDefine &$element

Page 380 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 428: PhpDocumentor 1.2.2 Manual

array $addition any additional template variables should be in this array

Converts defines for template output Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. This functionmust be called by a child converter with any extra template variables needed in theparameter $addition

Uses Converter::postProcess() - on define_value template value, makes it displayable

function Converter::ConvertErrorLog() [line 2186]Convert the phpDocumentor parsing/conversion error log

Abstract Element

function Converter::convertFunction(&$element, [$addition = array()]) [line 3945]Function Parameters:

parserFunction &$element

Converts function for template output Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. This functionmust be called by a child converter with any extra template variables needed in theparameter $addition

See Converter::prepareDocBlock()

Page 381 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 429: PhpDocumentor 1.2.2 Manual

function Converter::convertGlobal(&$element, [$addition = array()]) [line 3854]Function Parameters:

parserGlobal &$element array $addition any additional template variables should be in this array

Converts global variables for template output Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. This functionmust be called by a child converter with any extra template variables needed in theparameter $addition

Uses Converter::postProcess() - on global_value template value, makes it displayable

function Converter::convertInclude(&$element, [$addition = array()]) [line 3917]Function Parameters:

parserInclude &$element

Converts includes for template output Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. This functionmust be called by a child converter with any extra template variables needed in theparameter $addition

See Converter::prepareDocBlock()

Page 382 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 430: PhpDocumentor 1.2.2 Manual

function Converter::convertMethod(&$element, [$additions = array()]) [line 3712]Function Parameters:

parserMethod &$element

Converts method for template output Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. This functionmust be called by a child converter with any extra template variables needed in theparameter $addition

function Converter::convertPage(&$element) [line 3810]Function Parameters:

parserPage &$element

Default Page Handler Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template.

string function Converter::ConvertTitle($tag, $attr, $title, $cdata) [line 1186]Function Parameters:

string $tag tag name array $attr string $title title text string $cdata

Convert the title of a Tutorial docbook tag section to a string based on the template options.ini

Page 383 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 431: PhpDocumentor 1.2.2 Manual

function Converter::ConvertTodoList() [line 2194]Convert the list of all @todo tags

Abstract Element

function Converter::convertTutorial(&$element) [line 3624]Function Parameters:

parserTutorial &$element

Default Tutorial Handler Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template. Sets up thetutorial template, and its prev/next/parent links

function Converter::convertVar(&$element, [$additions = array()]) [line 3767]Function Parameters:

parserVar &$element

Converts class variables for template output. Conversion Handlers

All of the convert* handlers set up template variables for the Smarty template.

This function must be called by a child converter with any extra template variables needed inthe parameter $addition

function Converter::Convert_RIC($name, $contents) [line 3576]Function Parameters:

README|INSTALL|CHANGELOG $name

Page 384 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 432: PhpDocumentor 1.2.2 Manual

string $contents contents of the file

Convert README/INSTALL/CHANGELOG file contents to output format

Abstract Element

function Converter::copyFile($file, [$subdir = '']) [line 4622]Function Parameters:

string $file

Copies a file from the template directory to the target directory thanks to Robert Hoffmann for this fix

function Converter::createParentDir($dir) [line 4540]Function Parameters:

string $dir

Recursively creates all subdirectories that don't exist in the $dir path

string function Converter::EncloseList($list, $ordered) [line 705]Function Parameters:

string $list

Used to convert the contents of <ol> or <ul> in a docblock

Usedby parserList::Convert() - enclose the list

Page 385 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 433: PhpDocumentor 1.2.2 Manual

string function Converter::EncloseParagraph($para) [line 734]Function Parameters:

string $para

Used to enclose a paragraph in a docblock

function Converter::endClass() [line 474]Called by walk() while converting, when the last class element has been parsed.

A Converter can use this method in any way it pleases. HTMLframesConverter uses it tocomplete the template for the class and to output its documentation

Abstract Element See HTMLframesConverter::endClass()

function Converter::endPage() [line 488]Called by walk() while converting, when the last procedural page element has been

parsed. A Converter can use this method in any way it pleases. HTMLframesConverter uses it to

complete the template for the procedural page and to output its documentation

Abstract Element See HTMLframesConverter::endClass()

function Converter::formatIndex() [line 512]Called by walk() while converting.

This method is intended to be the place that $elements is formatted for output.

Page 386 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 434: PhpDocumentor 1.2.2 Manual

Abstract Element See HTMLframesConverter::formatIndex()

function Converter::formatLeftIndex() [line 526]Called by walk() while converting.

This method is intended to be the place that any of $class_elements,$function_elements, $page_elements, $define_elements, and $global_elements is formattedfor output, depending on the value of $leftindex

Abstract Element See HTMLframesConverter::formatLeftIndex()

function Converter::formatPkgIndex() [line 500]Called by walk() while converting.

This method is intended to be the place that $pkg_elements is formatted for output.

Abstract Element See HTMLframesConverter::formatPkgIndex()

string function Converter::formatTutorialTOC($toc) [line 847]Function Parameters:

array $toc format: array(array('tagname' => section, 'link' => returnsee link, 'id' =>anchor name, 'title' => from title tag),...)

Page 387 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 435: PhpDocumentor 1.2.2 Manual

Creates a table of contents for a {@toc} inline tag in a tutorial This function should return a formatted table of contents. By default, it does nothing, it is

up to the converter to format the TOC

Usedby parserTocInlineTag::Convert() - passes an array of format:

<pre> array( 'tagname' => string name of tag, 'link' => tutorialLink to the tutorial, 'id' => converter specific tutorial ID from Converter::getTutorialId() 'title' => title of the tutorial) </pre>

and returns the results as the table of contents Abstract Element

function Converter::generateChildClassList($class) [line 4237]Function Parameters:

parserClass $class class variable

returns a list of child classes

Uses parserClass::getChildClassList()

string function Converter::generateFormattedClassTree($class) [line 4144]Function Parameters:

parserClass $class class variable

returns an array containing the class inheritance tree from the root object to the class. This method must be overridden, or phpDocumentor will halt with a fatal error

Page 388 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 436: PhpDocumentor 1.2.2 Manual

Abstract Element

array function Converter::getClassesOnPage(&$element) [line 4100]Function Parameters:

parserData &$element

gets a list of all classes declared on a procedural page represented by $element, a parserData class

mixed function Converter::getClassLink($expr, $package, [$file = false], [$text = false]) [line 2890]Function Parameters:

string $expr class name string $package package name

return false or a classLink to $expr

See classLink

string function Converter::getConverterDir() [line 4455]Get the absolute path to the converter's base directory

string function Converter::getCurrentPageLink() [line 929]

Abstract Element

Page 389 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 437: PhpDocumentor 1.2.2 Manual

string function Converter::getCurrentPageURL($pathinfo) [line 909]Function Parameters:

string $pathinfo

Return the path to the current

mixed function Converter::getDefineLink($expr, $package, [$file = false], [$text = false]) [line 2938]Function Parameters:

string $expr constant name string $package package name

return false or a defineLink to $expr

See defineLink

string function Converter::getFileSourceName($path, $pathinfo) [line 887]Function Parameters:

string $pathinfo

Translate the path info into a unique file name for the highlighted source code.

string function Converter::getFileSourcePath($base) [line 900]Function Parameters:

string $base Path is relative to this folder

Page 390 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 438: PhpDocumentor 1.2.2 Manual

Return the fixed path to the source-code file folder.

array function Converter::getFormattedConflicts(&$element, $type) [line 4160]Function Parameters:

mixed &$element parserClass, parserFunction, parserDefine or parserGlobal string $type type to display. either 'class','function','define' or 'global variable'

Uses parserGlobal::getConflicts() Uses parserDefine::getConflicts() Uses parserFunction::getConflicts() Uses parserClass::getConflicts()

array function Converter::getFormattedDescMethods(&$element) [line 4180]Function Parameters:

parserMethod &$element

Get a list of methods in child classes that override this method

Uses parserMethod::getOverridingMethods()

array function Converter::getFormattedDescVars(&$element) [line 4201]Function Parameters:

parserVar &$element

Get a list of vars in child classes that override this var

Page 391 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 439: PhpDocumentor 1.2.2 Manual

Uses parserVar::getOverridingVars()

array function Converter::getFormattedInheritedMethods($child) [line 4335]Function Parameters:

parserMethod $child class method

Return template-enabled list of inherited methods uses parserMethod helper function getInheritedMethods and generates a template-

enabled list using getClassLink()

See Converter::getClassLink(), parserMethod::getInheritedMethods()

array function Converter::getFormattedInheritedVars($child) [line 4275]Function Parameters:

parserVar $child class method

Return template-enabled list of inherited variables uses parserVar helper function getInheritedVars and generates a template-enabled list

using getClassLink()

See Converter::getClassLink(), parserVar::getInheritedVars()

array|false function Converter::getFormattedOverrides(&$element) [line 4222]Function Parameters:

Page 392 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 440: PhpDocumentor 1.2.2 Manual

parserMethod &$element

Get the method this method overrides, if any

See parserMethod::getOverrides()

mixed function Converter::getFunctionLink($expr, $package, [$file = false], [$text = false]) [line 2914]Function Parameters:

string $expr function name string $package package name

return false or a functionLink to $expr

See functionLink

mixed function Converter::getGlobalLink($expr, $package, [$file = false], [$text = false]) [line 2962]Function Parameters:

string $expr global variable name (with leading $) string $package package name

return false or a globalLink to $expr

See defineLink

Page 393 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 441: PhpDocumentor 1.2.2 Manual

string function Converter::getGlobalValue($value) [line 4475]Function Parameters:

string $value default value of a global variable.

Parse a global variable's default value for class initialization. If a global variable's default value is "new class" as in:

1 $globalvar = new Parser

This method will document it not as "new Parser" but instead as "new Parser". Forexamples, see phpdoc.inc. Many global variables are classes, and phpDocumentor links to their documentation

string function Converter::getId(&$link) [line 3566]Function Parameters:

abstractLink &$link

take abstractLink descendant and text $eltext and return a unique ID in the format needed for the Converter

Abstract Element

string function Converter::getIncludeValue($value, $ipath) [line 4514]Function Parameters:

string $value file included by include statement. string $ipath path of file that has the include statement

Parse an include's file to see if it is a file documented in this project Although not very smart yet, this method will try to look for the included file file.ext:

Page 394 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 442: PhpDocumentor 1.2.2 Manual

1 include ("file.ext" );

If it finds it, it will return a link to the file's documentation. As of 1.2.0rc1, phpDocumentor is smarty enough to findthese cases:

absolute path to file./file.ext or ../file.extrelpath/to/file.ext if relpath is a subdirectory of the base parse directory For examples, see Setup.inc.php includes. Every include auto-links to the documentation for the file that is

included

mixed function Converter::getLink($expr, [$package = false], [$packages = false]) [line 3247]Function Parameters:

string $expr expression to search for a link string $package package to start searching in array $packages list of all packages to search in

The meat of the @see tag and inline {@link} tag $expr is a string with many allowable formats:

1. proceduralpagename.ext2. constant_name3. classname::function()4. classname::$variablename5. classname6. function functionname()7. global $globalvarname8. packagename#expr where expr is any of the above

New in version 1.1, you can explicitly specify a package to link to that is different from thecurrent package. Use the # operator to specify a new package, as in tests#bug-540368.php(which should appear as a link like: "bug-540368.php"). This example links tothe procedural page bug-540368.php in package tests. Also, the "function"operator is now used to specifically link to a function instead of a method in the current class.

1 class myclass2 {3 // from inside the class definition, use "function conflict()" to refer to proceduralfunction "conflict()"4 function conflict()5 {6 }7 }8 9 function conflict()10 {

Page 395 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 443: PhpDocumentor 1.2.2 Manual

11 }

If classname:: is not present, and the see tag is in a documentation block within a class, then the function uses theclassname to search for $expr as a function or variable within classname, or any of its parent classes. given an$expr without '$', '::' or '()' getLink first searches for classes, procedural pages, constants, global variables, andthen searches for methods and variables within the default class, and finally for any function

See pageLink, functionLink, defineLink, classLink, methodLink, varLink See Converter::getPageLink(), Converter::getDefineLink(), Converter::getVarLink(),Converter::getFunctionLink(), Converter::getClassLink()

mixed function Converter::getMethodLink($expr, $class, $package, [$file = false], [$text = false]) [line 3011]Function Parameters:

string $expr method name string $class class name string $package package name

return false or a methodLink to $expr in $class

See methodLink

mixed function Converter::getPageLink($expr, $package, [$path = false], [$text = false], [$packages = false]) [line2986]

Function Parameters:

string $expr procedural page name string $package package name

return false or a pageLink to $expr

Page 396 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 444: PhpDocumentor 1.2.2 Manual

See pageLink

array function Converter::getSortedClassTreeFromClass($class, $package, $subpackage) [line 2681]Function Parameters:

string $class class name string $package string $subpackage

Return a tree of all classes that extend this class The data structure returned is designed for a non-recursive algorithm, and is somewhat

complex. In most cases, the array returned is:

array('#root' => array('link' => to $class, 'parent' => false, 'children' => array(array('class' => 'childclass1', 'package' => 'child1package'), array('class' => 'childclass2', 'package' => 'child2package'),... ) ), 'child1package#childclass1' => array('link' => to childclass1, 'parent' => '#root', 'children' => array(array('class' => 'kidclass', 'package' => 'kidpackage'),... ) ), 'kidpackage#kidclass' => array('link' => to kidclass, 'parent' => 'child1package#childclass1', 'children' => array() // no children ), .... )

To describe this format using language, every class in the tree has an entry in the first levelof the array. The index for all child classes that extend the root class is

Page 397 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 445: PhpDocumentor 1.2.2 Manual

childpackage#childclassname. Each entry in the array has 3 elements: link, parent, andchildren.

link - a classLink to the current classparent - a classLink to the class's parent, or false (except for one special case describedbelow)children - an array of arrays, each entry has a 'class' and 'package' index to the childclass, used to find the entry in the big array

special cases are when the #root class has a parent in another package, or when the #rootclass extends a class not found by phpDocumentor. In the first case, parent will be a classLink to the parent class. In the second, parent will be the extends clause, as in:

1 class X extends Y2 {3 ...4 }

in this case, the #root entry will be array('link' => classLink to X, 'parent' => 'Y', children => array(...))

The fastest way to design a method to process the array returned is to copy HTMLframesConverter::getRootTree()into your converter and to modify the html to whatever output format you are going to use

See HTMLframesConverter::getRootTree()

string function Converter::getSourceLink($path) [line 919]

Usedby parserFileSourceTag::getSourceLink() Abstract Element

function Converter::getState() [line 4636]Return parserStringWithInlineTags::Convert() cache state

Abstract Element See parserStringWithInlineTags::Convert()

Page 398 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 446: PhpDocumentor 1.2.2 Manual

string function Converter::getTutorialId($package, $subpackage, $tutorial, $id) [line 1208]Return a converter-specific id to distinguish tutorials and their sections

Used by {@id}

Usedby parserTocInlineTag::Convert() - retrieve the tutorial ID for Usedby parserIdInlineTag::Convert() - retrieve converter-specific ID

tutorialLink|string function Converter::getTutorialLink($expr, [$package = false], [$subpackage = false], [$packages= false]) [line 3101]

Function Parameters:

string $expr the original expression string $package package to look in first string $subpackage subpackage to look in first array $packages array of package names to search in if not found in parent packages. This is used to limit the search, phpDocumentor automatically searches all packages

The meat of the @tutorial tag and inline {@tutorial} tag Take a string and return an abstract link to the tutorial it represents. Since tutorial

naming literally works like the underlying filesystem, the way to reference the tutorial issimilar. Tutorials are located in a subdirectory of any directory parsed, which is named'tutorials/' (we try to make things simple when we can :). They are further organized by package and subpackage as:

tutorials/package/subpackage

and the files are named *.cls, *.pkg, or *.proc, and so a link to a tutorial named file.cls can bereferenced (depending on context) as any of:

1 * @tutorial package/subpackage/file.cls2 * @tutorial package/file.cls3 * @tutorial file.cls

The first case will only be needed if file.cls exists in both the current package, in anotherpackage/file.cls and inanotherpackage/subpackage/file.cls and you wish to reference the one in anotherpackage/subpackage. Thesecond case is only needed if you wish to reference file.cls in another package and it is unique in that package.the third will link to the first file.cls it finds using this search method:

Page 399 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 447: PhpDocumentor 1.2.2 Manual

1. current package/subpackage2. all other subpackages of current package3. parent package, if this package has classes that extend classes in

another package4. all other packages

Since 1.2

array function Converter::getTutorialTree($tutorial) [line 1761]Function Parameters:

parserTutorial|array $tutorial

Get a tree structure representing the hierarchy of tutorials Returns an array in format:

array('tutorial' => , 'kids' => array( // child tutorials array('tutorial' => child , 'kids' => array(...) ) ) )

Tutorial phpDocumentor Tutorials

mixed function Converter::getVarLink($expr, $class, $package, [$file = false], [$text = false]) [line 3038]Function Parameters:

string $expr var name string $class class name string $package package name

Page 400 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 448: PhpDocumentor 1.2.2 Manual

return false or a varLink to $expr in $class

See varLink

boolean function Converter::hasSourceCode($path) [line 964]Function Parameters:

string $path full path to the source code file

Determine whether an element's file has generated source code, used for linking toline numbers of source. Wrapper for $sourcePaths in this version

false|parserTutorial function Converter::hasTutorial($type, $name, $package, [$subpackage = '']) [line 457]Function Parameters:

pkg|cls|proc $type the tutorial type to search for tutorial $name name string $package package name string $subpackage subpackage name, if any

string function Converter::highlightDocBlockSource($token, $word, [$preformatted = false]) [line 601]Function Parameters:

string $token name of docblock token type string $word contents of token boolean $preformatted whether the contents are preformatted or need modification

Page 401 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 449: PhpDocumentor 1.2.2 Manual

Used to allow converters to format the source code of DocBlocks the way they'd like. default returns it unchanged. Mainly used by the HighlightParser

string function Converter::highlightSource($token, $word, [$preformatted = false]) [line 562]Function Parameters:

integer $token token value from http://www.php.net/tokenizer string $word contents of token boolean $preformatted whether the contents are preformatted or need modification

Used to allow converters to format the source code the way they'd like. default returns it unchanged. Mainly used by the HighlightParser

string function Converter::Italicize($para) [line 762]Function Parameters:

string $para

Used to convert the contents of <i> in a docblock

Usedby parserI::Convert()

string function Converter::Kbdize($para) [line 790]Function Parameters:

string $para

Used to convert the contents of <kbd> in a docblock

Page 402 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 450: PhpDocumentor 1.2.2 Manual

Usedby parserKbd::Convert()

string function Converter::ListItem($item) [line 691]Function Parameters:

string $item

Used to convert the contents of li>> in a docblock

Usedby parserList::Convert() - enclose each item of the list

Smarty function Converter::newSmarty() [line 4388]Return a Smarty template object to operate with

This returns a Smarty template with pre-initialized variables for use. If the method"SmartyInit()" exists, it is called.

function Converter::Output($title) [line 4409]do all necessary output

Usedby phpDocumentor_IntermediateParser::Convert() Abstract Element See Converter

string function Converter::postProcess($text) [line 833]This version does nothing

Perform necessary post-processing of string data. For example, the HTML Convertersshould escape < and > to become &lt; and &gt;

Page 403 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 451: PhpDocumentor 1.2.2 Manual

Usedby Converter::convertDefine() - on define_value template value, makes it displayable Usedby Converter::convertGlobal() - on global_value template value, makes it displayable

array function Converter::prepareDocBlock(&$element, [$names = array()], [$nopackage = true]) [line 4010]Function Parameters:

mixed &$element any descendant of parserElement, or parserData array $names used to translate tagnames into other tags boolean $nopackage set to false for pages and classes, the only elements allowed to specify@package

convert the element's DocBlock for output This function converts all tags and descriptions for output

string function Converter::PreserveWhiteSpace($string) [line 720]Function Parameters:

string $string

Used to convert the contents of <pre> in a docblock

Usedby parserPre::Convert()

string function Converter::ProgramExample($example, [$tutorial = false], [$inlinesourceparse = null], [$class = null],[$linenum = null], [$filesourcepath = null]) [line 631]

Function Parameters:

string $example boolean $tutorial true if this is to highlight a tutorial <programlisting>

Page 404 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 452: PhpDocumentor 1.2.2 Manual

Used to convert the <code> tag in a docblock

Usedby parserCode::Convert()

string function Converter::returnLink($link, $text) [line 3543]Function Parameters:

string $link URL string $text text to display

take URL $link and text $text and return a link in the format needed for the Converter

Abstract Element

string function Converter::returnSee(&$link, [$eltext = false]) [line 3555]Function Parameters:

abstractLink &$link string $eltext

take abstractLink descendant and text $eltext and return a link in the format needed for the Converter

Abstract Element

Page 405 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 453: PhpDocumentor 1.2.2 Manual

string function Converter::Sampize($para) [line 804]Function Parameters:

string $para

Used to convert the contents of <samp> in a docblock

Usedby parserSamp::Convert()

function Converter::setSourcePaths($path) [line 973]Function Parameters:

string $path full path of source file

Mark a file as having had source code highlighted

function Converter::setTargetDir($dir) [line 4565]Function Parameters:

string $dir the output directory

Sets the output directory for generated documentation

function Converter::setTemplateBase($base, $dir) [line 4420]Function Parameters:

string $base template base directory string $dir template name

Page 406 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 454: PhpDocumentor 1.2.2 Manual

Set the template directory with a different template base directory

Tutorial http://phpdocu.sourceforge.net Tutorial

function Converter::setTemplateDir($dir) [line 4445]Function Parameters:

string $dir subdirectory

sets the template directory based on the $outputformat and $name Also sets $templateName to the $dir parameter

function Converter::sortPageContentsByElementType(&$pages) [line 2315]sorts $page_contents by element type as well as alphabetically

See $sort_page_contents_by_element_type

string function Converter::sourceLine($linenumber, $line, [$path = false]) [line 944]Function Parameters:

integer $linenumber line number string $line highlighted source code line false|string $path full path to @filesource file this line is a part of, if this is a single line froma complete file.

Return a line of highlighted source code with formatted line number If the $path is a full path, then an anchor to the line number will be added as well

Page 407 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 455: PhpDocumentor 1.2.2 Manual

function Converter::TranslateEntity($name) [line 983]Function Parameters:

string $name entity name

Used to translate an XML DocBook entity like &rdquo; from a tutorial by readingthe options.ini file for the template.

Usedby parserEntity::Convert() - convert contents to text

string function Converter::TranslateTag($name, $attr, $cdata, $unconvertedcdata) [line 1013]Function Parameters:

string $name tag name string $attr any attributes Format: array(name => value) string $cdata the tag contents, if any string $unconvertedcdata the tag contents, if any, unpost-processed

Used to translate an XML DocBook tag from a tutorial by reading the options.ini file forthe template.

Usedby parserXMLDocBookTag::Convert() - Calls this to enclose the contents of the DocBook tag based on the values in template options.ini file

string function Converter::type_adjust($typename) [line 620]Function Parameters:

string $typename

Page 408 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 456: PhpDocumentor 1.2.2 Manual

Called by parserReturnTag::Convert() to allow converters to change type names todesired formatting Used by XMLDocBookConverter::type_adjust() to change true and false to the peardoc2

values

string function Converter::unmangle($sourcecode) [line 541]Function Parameters:

string $sourcecode output from highlight_string() - use this function to reformat the returneddata for Converter-specific output

Called by parserSourceInlineTag::stringConvert() to allow converters to format thesource code the way they'd like. default returns it unchanged (html with xhtml tags)

Usedby parserSourceInlineTag::stringConvert() - remove the extraneous stuff from http://www.php.net/highlight_string Deprecated in favor of tokenizer-based highlighting. This will be removed for 2.0

string function Converter::vardump_tree($tree, [$indent = '']) [line 1964]Debugging function for dumping $tutorial_tree

string function Converter::Varize($para) [line 776]Function Parameters:

string $para

Used to convert the contents of <var> in a docblock

Usedby parserDescVar::Convert()

Page 409 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 457: PhpDocumentor 1.2.2 Manual

function Converter::walk(&$pages, &$package_pages) [line 1493]Function Parameters:

array &$pages Format: array(fullpath => parserData structure with full parserData::$elements and parserData::$class_elements. array &$package_pages Format: array(parserPackagePage 1, parserPackagePage 2,...)

called by phpDocumentor_IntermediateParser::Convert() to traverse the array ofpages and their elements, converting them to the output format The walk() method should be flexible enough such that it never needs modification.

walk() sets up all of the indexes, and sorts everything in logical alphabetical order. It thenpasses each element individually to Convert(), which then passes to the Convert*() methods. A child Converter need not override any of these unless special functionality must be added.see Converter Default Template Variables for details.

Usedby phpDocumentor_IntermediateParser::Convert() - passes $pages and $package_pages Uses Converter::_createPkgElements() - sets up $elements and $pkg_elements array, as well as $links

function Converter::walk_everything() [line 2027]walk over elements by package rather than page

This method is designed for converters like the PDF converter that need everythingpassed in alphabetical order by package/subpackage and by procedural and then classinformation

See Converter::walk() See PDFdefaultConverter

function Converter::writeExample($title, $path, $source) [line 877]Function Parameters:

Page 410 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 458: PhpDocumentor 1.2.2 Manual

string $title example title string $path example filename (no path) string $source fully highlighted/linked source code of the file

Write out the formatted source code for an example php file This function provides the primary functionality for the @example tag.

Abstract Element

function Converter::writeFile($file, $data, [$binary = false]) [line 4599]Function Parameters:

string $file string $data boolean $binary true if the data is binary and not text

Writes a file to target dir

function Converter::writeSource($filepath, $source) [line 861]Function Parameters:

string $filepath full path to the file string $source fully highlighted/linked source code of the file

Write out the formatted source code for a php file This function provides the primary functionality for the @filesource tag.

Page 411 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 459: PhpDocumentor 1.2.2 Manual

Usedby parserFileSourceTag::writeSource() - export highlighted file source Abstract Element

string function Converter::_tutorial_path($pkg, [$subpkg = 0], [$namepkg = 0]) [line 1857]Function Parameters:

parserTutorial $pkg parserTutorial $subpkg parserTutorial $namepkg

Returns the path to this tutorial as a string

Page 412 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 460: PhpDocumentor 1.2.2 Manual

CHMdefaultConverter.incCHM (Compiled Help Manual) output converter for Smarty Template.

Package Converters Sub-Package CHMdefault Version $Id: CHMdefaultConverter.inc,v 1.33.2.8 2003/07/30 00:39:45 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]>

Class CHMdefaultConverter [line 44]

Generates files that MS HTML Help Worshop can use to create a MS Windows compiled help file (CHM) The free MS HTML Help compiler takes the project file (phpdoc.hhp) and reads the table

of contents file specified in the project (which is always contents.hhc in phpDocumentor). When the converter reaches stable state, it will also output an index file index.hhk. The freedownload for MS HTML Help Workshop is available below

Package Converters Sub-Package CHMdefault Version $Revision: 1.33.2.8 $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> Link http://www.microsoft.com/downloads/release.asp?releaseid=33071

Page 413 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 461: PhpDocumentor 1.2.2 Manual

CHMdefaultConverter::$base_dir

string = [line 73]

target directory passed on the command-line. $targetDir is malleable, always adding package/ and package/subpackage/

subdirectories onto it.

CHMdefaultConverter::$class_dir

string = [line 79]

output directory for the current class being processed

CHMdefaultConverter::$current

array = [line 104]

contains all of the template procedural page element loop data needed for the currenttemplate

CHMdefaultConverter::$currentclass

array = [line 110]

contains all of the template class element loop data needed for the current template

CHMdefaultConverter::$juststarted

boolean = false [line 98]

controls formatting of parser informative output Converter prints: "Converting /path/to/file.php... Procedural Page Elements...

Classes..." Since CHMdefaultConverter outputs files while converting, it needs to senda \n to start a new line. However, if there is more than one class, output is messy, withmultiple \n's just between class file output. This variable prevents that and is purely cosmetic

CHMdefaultConverter::$KLinks

array = array() [line 117]

Table of Contents entry for index.hhk

Page 414 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 462: PhpDocumentor 1.2.2 Manual

Usedby CHMdefaultConverter::addKLink() - tracks the index

CHMdefaultConverter::$leftindex

array = array('classes' => true, 'pages' => true, 'functions' => true, 'defines' => false, 'globals' => false) [line60]

indexes of elements by package that need to be generated

CHMdefaultConverter::$name

string = 'default' [line 55]

CHMdefaultConverter::$outputformat

string = 'CHM' [line 53]

CHMdefaultConverter::$package_pages

array = array() [line 86]

array of converted package page names. Used to link to the package page in the left index

Var Format: array(package => 1)

CHMdefaultConverter::$page_dir

string = [line 66]

output directory for the current procedural page being processed

CHMdefaultConverter::$ric_set

mixed = array() [line 112]

CHMdefaultConverter::$sort_page_contents_by_type

boolean = true [line 51]

CHMdefaultConverter wants elements sorted by type as well as alphabetically

Page 415 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 463: PhpDocumentor 1.2.2 Manual

See Converter::$sort_page_contents_by_type

CHMdefaultConverter::$wrote

mixed = false [line 111]

Constructor function CHMdefaultConverter::CHMdefaultConverter(&$allp, &$packp, &$classes, &$procpages,$po, $pp, $qm, $targetDir, $templateDir, $title) [line 123]

sets $base_dir to $targetDir

See Converter::Converter()

function CHMdefaultConverter::addHHP($file) [line 1483]

Uses $hhp_files - creates the array by adding parameter $file

function CHMdefaultConverter::addKLink($name, $file, [$bookmark = ''], [$group = '']) [line 1573]Function Parameters:

string $name index entry name string $file filename containing index string $bookmark html anchor of location in file, if any string $group group this entry with a string

Add an item to the index.hhk file

Page 416 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 464: PhpDocumentor 1.2.2 Manual

Author Andrew Eddie < mailto:[email protected]> Uses CHMdefaultConverter::$KLinks - tracks the index

function CHMdefaultConverter::addSourceTOC($name, $file, $package, $subpackage, [$source = false]) [line1543] function CHMdefaultConverter::addTOC($name, $file, $package, $subpackage, [$class = false], [$tutorial = false])[line 1553] function CHMdefaultConverter::convertClass(&$element) [line 762]

Function Parameters:

parserClass &$element

Converts class for template output

See Converter::getFormattedInheritedMethods(), Converter::getFormattedInheritedVars() See Converter::prepareDocBlock(), Converter::generateChildClassList(),CHMdefaultConverter::generateFormattedClassTree(), Converter::getFormattedConflicts()

function CHMdefaultConverter::convertDefine(&$element) [line 831]Function Parameters:

parserDefine &$element

Converts defines for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function CHMdefaultConverter::ConvertErrorLog() [line 632]Create errors.html template file output

This method takes all parsing errors and warnings and spits them out ordered by file andline number.

Page 417 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 465: PhpDocumentor 1.2.2 Manual

Global Variable Used ErrorTracker $phpDocumentor_errors: We'll be using it's output facility

function CHMdefaultConverter::convertFunction(&$element) [line 806]Function Parameters:

parserFunction &$element

Converts function for template output

See Converter::prepareDocBlock(), parserFunction::getFunctionCall(),Converter::getFormattedConflicts()

function CHMdefaultConverter::convertGlobal(&$element) [line 842]Function Parameters:

parserGlobal &$element

Converts global variables for template output

function CHMdefaultConverter::convertInclude(&$element) [line 819]Function Parameters:

parserInclude &$element

Converts include elements for template output

Page 418 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 466: PhpDocumentor 1.2.2 Manual

See Converter::prepareDocBlock()

function CHMdefaultConverter::convertMethod(&$element) [line 794]Function Parameters:

parserDefine &$element

Converts class methods for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function CHMdefaultConverter::convertPackagepage(&$element) [line 707]Function Parameters:

parserPackagePage &$element

Converts package page and sets its package as used in $package_pages

function CHMdefaultConverter::convertPage(&$element) [line 854]Function Parameters:

parserData &$element

converts procedural pages for template output

See Converter::prepareDocBlock(), Converter::getClassesOnPage()

Page 419 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 467: PhpDocumentor 1.2.2 Manual

function CHMdefaultConverter::ConvertTodoList() [line 578] function CHMdefaultConverter::convertTutorial(&$element) [line 728]

Function Parameters:

parserTutorial &$element

function CHMdefaultConverter::convertVar(&$element) [line 782]Function Parameters:

parserDefine &$element

Converts class variables for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function CHMdefaultConverter::Convert_RIC($name, $contents) [line 614]Function Parameters:

README|INSTALL|CHANGELOG $name string $contents contents of the file

Convert README/INSTALL/CHANGELOG file contents to output format

function CHMdefaultConverter::copyMediaRecursively($media, $targetdir, [$subdir = '']) [line 1175] function CHMdefaultConverter::endClass() [line 276]

Writes out the template file of $class_data and unsets the template to save memory

See Converter::endClass() See registerCurrentClass()

Page 420 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 468: PhpDocumentor 1.2.2 Manual

function CHMdefaultConverter::endPage() [line 299]Writes out the template file of $page_data and unsets the template to save memory

See Converter::endPage() See registerCurrent()

function CHMdefaultConverter::formatIndex() [line 363]CHMdefaultConverter uses this function to format template index.html and

packages.html This function generates the package list from $all_packages, eliminating any packages

that don't have any entries in their package index (no files at all, due to @ignore or otherfactors). Then it uses the default package name as the first package index to display. It setsthe right pane to be either a blank file with instructions on making package-level docs, or thepackage-level docs for the default package.

Global Variable Used string $phpDocumentor_DefaultPackageName: Used to set the startingpackage to display

function CHMdefaultConverter::formatLeftIndex() [line 459]Generate indexes for li_package.html and classtree output files

This function generates the li_package.html files from the template file left.html. It doesthis by iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve the pre-sorted abstractLink descendants needed forindex generation. Conversion of these links to text is done by returnSee(). The $localparameter is set to false to ensure that paths are correct.

Then it uses generateFormattedClassTrees() to create class trees from the template fileclasstrees.html. Output filename is classtrees_packagename.html. This function also unsets$elements and $pkg_elements to free up the considerable memory these two class vars use

See Converter::$page_elements, Converter::$class_elements, Converter::$function_elements

Page 421 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 469: PhpDocumentor 1.2.2 Manual

function CHMdefaultConverter::formatPkgIndex() [line 331]CHMdefaultConverter chooses to format both package indexes and the complete index

here This function formats output for the elementindex.html and pkgelementindex.html

template files. It then writes them to the target directory

See CHMdefaultConverter::generateElementIndex(),CHMdefaultConverter::generatePkgElementIndex()

string function CHMdefaultConverter::formatTutorialTOC($toc) [line 247]Function Parameters:

array $toc format: array(array('tagname' => section, 'link' => returnsee link, 'id' =>anchor name, 'title' => from title tag),...)

Use the template tutorial_toc.tpl to generate a table of contents for HTML

function CHMdefaultConverter::generateElementIndex() [line 1136]Generate alphabetical index of all elements

See Converter::$elements, Converter::walk()

array function CHMdefaultConverter::generateFormattedClassTree($class) [line 881]Function Parameters:

parserClass $class class variable

returns an array containing the class inheritance tree from the root object to the class

Page 422 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 470: PhpDocumentor 1.2.2 Manual

Uses parserClass::getParentClassTree()

function CHMdefaultConverter::generateFormattedClassTrees($package) [line 942]Function Parameters:

string $package package to generate a class tree for

returns a template-enabled array of class trees

See $roots, HTMLConverter::getRootTree()

string function CHMdefaultConverter::generateKLinks() [line 1594]Get the table of contents for index.hhk

Author Andrew Eddie < mailto:[email protected]>

function CHMdefaultConverter::generatePkgElementIndex($package) [line 1225]Function Parameters:

string $package name of a package

Generate alphabetical index of all elements by package and subpackage

See Converter::$pkg_elements, Converter::walk(),CHMdefaultConverter::generatePkgElementIndexes()

Page 423 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 471: PhpDocumentor 1.2.2 Manual

function CHMdefaultConverter::generatePkgElementIndexes() [line 1276]

See CHMdefaultConverter::generatePkgElementIndex()

function CHMdefaultConverter::generateTOC() [line 1491]

Usedby CHMdefaultConverter::Output() - assigns to the toc template variable

function CHMdefaultConverter::getCData($value) [line 693]mixed function CHMdefaultConverter::getClassLink($expr, $package, [$file = false], [$text = false], [$with_a = true])[line 1316]

Function Parameters:

string $expr name of class string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $with_a return just the URL, or enclose it in an html a tag

See Converter::getClassLink()

function CHMdefaultConverter::getCurrentPageLink() [line 229]mixed function CHMdefaultConverter::getDefineLink($expr, $package, [$file = false], [$text = false], 4) [line 1348]

Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of define

Page 424 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 472: PhpDocumentor 1.2.2 Manual

string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getDefineLink()

function CHMdefaultConverter::getExampleLink($path, $title) [line 187]mixed function CHMdefaultConverter::getFunctionLink($expr, $package, [$file = false], [$text = false], 4) [line 1332]

Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of function string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getFunctionLink()

mixed function CHMdefaultConverter::getGlobalLink($expr, $package, [$file = false], [$text = false], 4) [line 1364]Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of global variable string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

Page 425 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 473: PhpDocumentor 1.2.2 Manual

See Converter::getGlobalLink()

function CHMdefaultConverter::getId($element, [$fullpath = true]) [line 526]array function CHMdefaultConverter::getIndexInformation($elt) [line 1031]

Function Parameters:

parserElement $elt descendant of parserElement

Generate indexing information for given element

See CHMdefaultConverter::generateElementIndex()

mixed function CHMdefaultConverter::getMethodLink($expr, $class, $package, [$file = false], [$text = false], 5) [line1397]

Function Parameters:

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of method string $class class containing method string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getMethodLink()

Page 426 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 474: PhpDocumentor 1.2.2 Manual

mixed function CHMdefaultConverter::getPageLink($expr, $package, [$path = false], [$text = false], 4) [line 1380]Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of procedural page string $package package name string $path full path to look in (used in index generation) boolean $text deprecated

See Converter::getPageLink()

function CHMdefaultConverter::getPageName(&$element) [line 867]string function CHMdefaultConverter::getRootTree($tree, $package) [line 961]

Function Parameters:

array $tree output from getSortedClassTreeFromClass()

return formatted class tree for the Class Trees page

See Classes::$definitechild, CHMdefaultConverter::generateFormattedClassTrees()

string function CHMdefaultConverter::getSourceAnchor($sourcefile, $anchor, [$text = ''], [$link = false]) [line 220]Function Parameters:

string $sourcefile full path to source file string $anchor name of anchor string $text link text, if this is a link

Page 427 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 475: PhpDocumentor 1.2.2 Manual

boolean $link returns either a link or a destination based on this parameter

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a@filesource tag.

function CHMdefaultConverter::getSourceLink($path) [line 192] function CHMdefaultConverter::getTutorialId($package, $subpackage, $tutorial, $id) [line 698]mixed function CHMdefaultConverter::getVarLink($expr, $class, $package, [$file = false], [$text = false], 5) [line1414]

Function Parameters:

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of var string $class class containing var string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getVarLink()

function CHMdefaultConverter::Output() [line 1638]Create the phpdoc.hhp, contents.hhc files needed by MS HTML Help Compiler to

create a CHM file The output function generates the table of contents (contents.hhc) and file list

(phpdoc.hhp) files used to create a .CHM by the free MS HTML Help compiler.

Uses CHMdefaultConverter::generateTOC() - assigns to the toc template variable Link http://www.microsoft.com/downloads/release.asp?releaseid=33071 TODO use to directly call html help compiler hhc.exe

Page 428 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 476: PhpDocumentor 1.2.2 Manual

function CHMdefaultConverter::postProcess($text) [line 237]Uses htmlspecialchars() on the input

string function CHMdefaultConverter::ProgramExample($example, [$tutorial = false], [$inlinesourceparse = null],[$class = null], [$linenum = null], [$filesourcepath = null]) [line 204]

Function Parameters:

string $example boolean $tutorial

Used to convert the <code> tag in a docblock

int function CHMdefaultConverter::rcNatCmp($a, $b) [line 1428]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array

int function CHMdefaultConverter::rcNatCmp1($a, $b) [line 1444]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array. this one puts constructors first

string function CHMdefaultConverter::returnLink($link, $text) [line 319]Function Parameters:

string $link

Page 429 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 477: PhpDocumentor 1.2.2 Manual

string $text

function CHMdefaultConverter::returnSee(&$element, [$eltext = false], [$with_a = true], 3) [line 497]Function Parameters:

boolean 3 determines whether the returned text is enclosed in an <a> tag abstractLink &$element a descendant of abstractlink should be passed, and never text string $eltext text to display in the link boolean $with_a this parameter is not used, and is deprecated

This function takes an abstractLink descendant and returns an html link

function CHMdefaultConverter::setTargetDir($dir) [line 1205]calls the converter setTargetDir, and then copies any template images and the

stylesheet if they haven't been copied

See Converter::setTargetDir()

function CHMdefaultConverter::setTemplateDir($dir) [line 1169] function CHMdefaultConverter::SmartyInit(&$templ) [line 254] function CHMdefaultConverter::unmangle($sourcecode) [line 132]

Deprecated in favor of PHP 4.3.0+ tokenizer-based source highlighting

function CHMdefaultConverter::writeExample($title, $path, $source) [line 167] function CHMdefaultConverter::writefile($file, $contents) [line 1474]

Write a file to disk, and add it to the $hhp_files list of files to include in the generatedCHM 1 function writefile($file,$contents)

2 {3 $this-> addHHP($this-> targetDir . PATH_DELIMITER . $file);4 Converter::writefile( $file,$contents);

Page 430 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 478: PhpDocumentor 1.2.2 Manual

5 }

function CHMdefaultConverter::writeNewPPage($key) [line 427] function CHMdefaultConverter::writeSource($path, $value) [line 148]

Function Parameters:

string $path full path to the source file string $value fully highlighted source code

Class CSVdia2codeConverter [line 33]

CSV output converter.

Package Converters Sub-Package CSVdia2code Version $Id: CSVdia2codeConverter.inc,v 1.4.2.2 2003/07/30 00:39:45 CelloG Exp $ Since 1.2 Author Harald Fielker ([email protected])

CSVdia2codeConverter::$csv_array

mixed = array() [line 37]

CSVdia2codeConverter::$name

mixed = 'dia2code' [line 35]

CSVdia2codeConverter::$output

mixed = 'CSV' [line 36]

Constructor function CSVdia2codeConverter::CSVdia2codeConverter(&$allp, &$packp, &$classes, &$procpages,$po, $pp, $qm, $targetDir, $templateDir, $title) [line 41]

Page 431 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 479: PhpDocumentor 1.2.2 Manual

See Converter::Converter()

function CSVdia2codeConverter::convertClass(&$element) [line 176] function CSVdia2codeConverter::convertDefine(&$element) [line 201] function CSVdia2codeConverter::convertDocBlock(&$element) [line 102] function CSVdia2codeConverter::ConvertErrorLog() [line 334]

Create errors.html template file output This method takes all parsing errors and warnings and spits them out ordered by file and

line number.

Global Variable Used ErrorTracker $phpDocumentor_errors: We'll be using it's output facility

function CSVdia2codeConverter::convertFunction(&$element) [line 197] function CSVdia2codeConverter::convertGlobal(&$element) [line 110] function CSVdia2codeConverter::convertInclude(&$element) [line 193] function CSVdia2codeConverter::convertMethod(&$element) [line 114] function CSVdia2codeConverter::convertPackagepage(&$element) [line 222] function CSVdia2codeConverter::convertPage(&$element) [line 205] function CSVdia2codeConverter::convertParams(&$element) [line 106] function CSVdia2codeConverter::convertTutorial(&$element) [line 226] function CSVdia2codeConverter::convertVar(&$element) [line 152] function CSVdia2codeConverter::Convert_RIC($name, $contents) [line 98] function CSVdia2codeConverter::generateFormattedClassTrees($package) [line 230] function CSVdia2codeConverter::getCData($value) [line 217] function CSVdia2codeConverter::getClassLink($expr, $package, [$file = false], [$text = false]) [line 255] function CSVdia2codeConverter::getcsv($array, [$deliminator = ","]) [line 304] function CSVdia2codeConverter::getDefineLink($expr, $package, [$file = false], [$text = false]) [line 265] function CSVdia2codeConverter::getExampleLink($path, $title) [line 54] function CSVdia2codeConverter::getFunctionLink($expr, $package, [$file = false], [$text = false]) [line 260] function CSVdia2codeConverter::getGlobalLink($expr, $package, [$file = false], [$text = false]) [line 270] function CSVdia2codeConverter::getMethodLink($expr, $class, $package, [$file = false], [$text = false]) [line 280] function CSVdia2codeConverter::getPageLink($expr, $package, [$path = false], [$text = false]) [line 275] function CSVdia2codeConverter::getPageName(&$element) [line 209] function CSVdia2codeConverter::getRootTree($tree, $package) [line 234] function CSVdia2codeConverter::getSourceLink($path) [line 59]1 function CSVdia2codeConverter::getState() [line 295] function CSVdia2codeConverter::getTutorialId($package, $subpackage, $tutorial, $id) [line 213] function CSVdia2codeConverter::getVarLink($expr, $class, $package, [$file = false], [$text = false]) [line 285] function CSVdia2codeConverter::mystrnatcasecmp($a, $b) [line 251] function CSVdia2codeConverter::Output([$title = 'Generated Documentation']) [line 242]

calls Cezpdf::ezOutput() and writes documentation.pdf to targetDir

Page 432 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 480: PhpDocumentor 1.2.2 Manual

function CSVdia2codeConverter::returnLink($link, $text) [line 93] function CSVdia2codeConverter::returnSee(&$element, [$eltext = false]) [line 64] function CSVdia2codeConverter::setTemplateDir($dir) [line 290] function CSVdia2codeConverter::unmangle($notused, $source) [line 300] function CSVdia2codeConverter::writeExample($title, $path, $source) [line 50] function CSVdia2codeConverter::writeSource($path, $value) [line 46]

Page 433 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 481: PhpDocumentor 1.2.2 Manual

HTMLframesConverter.incHTML original framed output converter, modified to use Smarty Template.

This Converter takes output from the Parser and converts it to HTML-ready output foruse with Smarty.

Package Converters Sub-Package HTMLframes Version $Id: HTMLframesConverter.inc,v 1.79.2.5 2003/07/30 00:39:45 CelloG Exp $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,parserMethod, parserVar

Class HTMLframesConverter [line 41]

HTML output converter. This Converter takes output from the Parser and converts it to HTML-ready output for

use with Smarty.

Package Converters Sub-Package HTMLframes Version $Id: HTMLframesConverter.inc,v 1.79.2.5 2003/07/30 00:39:45 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]> See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,

Page 434 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 482: PhpDocumentor 1.2.2 Manual

parserMethod, parserVar

HTMLframesConverter::$base_dir

string = [line 70]

target directory passed on the command-line. $targetDir is malleable, always adding package/ and package/subpackage/

subdirectories onto it.

HTMLframesConverter::$class_dir

string = [line 76]

output directory for the current class being processed

HTMLframesConverter::$current

array = [line 101]

contains all of the template procedural page element loop data needed for the currenttemplate

HTMLframesConverter::$currentclass

array = [line 107]

contains all of the template class element loop data needed for the current template

HTMLframesConverter::$juststarted

boolean = false [line 95]

controls formatting of parser informative output Converter prints: "Converting /path/to/file.php... Procedural Page Elements...

Classes..." Since HTMLdefaultConverter outputs files while converting, it needs to senda \n to start a new line. However, if there is more than one class, output is messy, withmultiple \n's just between class file output. This variable prevents that and is purely cosmetic

HTMLframesConverter::$leftindex

array = array('classes' => true, 'pages' => true, 'functions' => true, 'defines' => false, 'globals' => false) [line57]

Page 435 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 483: PhpDocumentor 1.2.2 Manual

indexes of elements by package that need to be generated

HTMLframesConverter::$name

string = 'frames' [line 52]

HTMLframesConverter::$outputformat

string = 'HTML' [line 50]

HTMLframesConverter::$package_pages

array = array() [line 83]

array of converted package page names. Used to link to the package page in the left index

Var Format: array(package => 1)

HTMLframesConverter::$page_dir

string = [line 63]

output directory for the current procedural page being processed

HTMLframesConverter::$ric_set

mixed = array() [line 109]

HTMLframesConverter::$sort_page_contents_by_type

boolean = true [line 48]

Smarty Converter wants elements sorted by type as well as alphabetically

See Converter::$sort_page_contents_by_type

HTMLframesConverter::$wrote

Page 436 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 484: PhpDocumentor 1.2.2 Manual

mixed = false [line 108]

Constructor function HTMLframesConverter::HTMLframesConverter(&$allp, &$packp, &$classes, &$procpages,$po, $pp, $qm, $targetDir, $templateDir, $title) [line 115]

sets $base_dir to $targetDir

See Converter::Converter()

function HTMLframesConverter::convertClass(&$element) [line 937]Function Parameters:

parserClass &$element

Converts class for template output

See Converter::getFormattedInheritedMethods(), Converter::getFormattedInheritedVars() See Converter::prepareDocBlock(), Converter::generateChildClassList(),HTMLframesConverter::generateFormattedClassTree(), Converter::getFormattedConflicts()

function HTMLframesConverter::convertDefine(&$element) [line 996]Function Parameters:

parserDefine &$element

Converts defines for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

Page 437 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 485: PhpDocumentor 1.2.2 Manual

function HTMLframesConverter::ConvertErrorLog() [line 821]Create errors.html template file output

This method takes all parsing errors and warnings and spits them out ordered by file andline number.

Global Variable Used ErrorTracker $phpDocumentor_errors: We'll be using it's output facility

function HTMLframesConverter::convertFunction(&$element) [line 975]Function Parameters:

parserFunction &$element

Converts function for template output

See Converter::prepareDocBlock(), parserFunction::getFunctionCall(),Converter::getFormattedConflicts()

function HTMLframesConverter::convertGlobal(&$element) [line 1005]Function Parameters:

parserGlobal &$element

Converts global variables for template output

function HTMLframesConverter::convertInclude(&$element) [line 986]Function Parameters:

parserInclude &$element

Converts include elements for template output

Page 438 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 486: PhpDocumentor 1.2.2 Manual

See Converter::prepareDocBlock()

function HTMLframesConverter::convertMethod(&$element) [line 965]Function Parameters:

parserDefine &$element

Converts class methods for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function HTMLframesConverter::convertPackagepage(&$element) [line 896]Function Parameters:

parserPackagePage &$element

Converts package page and sets its package as used in $package_pages

function HTMLframesConverter::convertPage(&$element) [line 1015]Function Parameters:

parserData &$element

converts procedural pages for template output

See Converter::prepareDocBlock(), Converter::getClassesOnPage()

Page 439 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 487: PhpDocumentor 1.2.2 Manual

function HTMLframesConverter::ConvertTodoList() [line 786] function HTMLframesConverter::convertTutorial(&$element) [line 913]

Function Parameters:

parserTutorial &$element

function HTMLframesConverter::convertVar(&$element) [line 955]Function Parameters:

parserDefine &$element

Converts class variables for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function HTMLframesConverter::Convert_RIC($name, $contents) [line 776]Function Parameters:

README|INSTALL|CHANGELOG $name string $contents contents of the file

Convert README/INSTALL/CHANGELOG file contents to output format

function HTMLframesConverter::copyMediaRecursively($media, $targetdir, [$subdir = '']) [line 1328] function HTMLframesConverter::endClass() [line 264]

Writes out the template file of $class_data and unsets the template to save memory

See Converter::endClass()

Page 440 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 488: PhpDocumentor 1.2.2 Manual

See registerCurrentClass()

function HTMLframesConverter::endPage() [line 286]Writes out the template file of $page_data and unsets the template to save memory

See Converter::endPage() See registerCurrent()

function HTMLframesConverter::formatIndex() [line 536]HTMLdefaultConverter uses this function to format template index.html and

packages.html This function generates the package list from $all_packages, eliminating any packages

that don't have any entries in their package index (no files at all, due to @ignore or otherfactors). Then it uses the default package name as the first package index to display. It setsthe right pane to be either a blank file with instructions on making package-level docs, or thepackage-level docs for the default package.

Global Variable Used string $phpDocumentor_DefaultPackageName: Used to set the startingpackage to display

function HTMLframesConverter::formatLeftIndex() [line 636]Generate indexes for li_package.html and classtree output files

This function generates the li_package.html files from the template file left.html. It doesthis by iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve the pre-sorted abstractLink descendants needed forindex generation. Conversion of these links to text is done by returnSee(). The $localparameter is set to false to ensure that paths are correct.

Then it uses generateFormattedClassTrees() to create class trees from the template fileclasstrees.html. Output filename is classtrees_packagename.html. This function also unsets$elements and $pkg_elements to free up the considerable memory these two class vars use

Page 441 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 489: PhpDocumentor 1.2.2 Manual

See Converter::$page_elements, Converter::$class_elements, Converter::$function_elements

function HTMLframesConverter::formatPkgIndex() [line 507]HTMLdefaultConverter chooses to format both package indexes and the complete

index here This function formats output for the elementindex.html and pkgelementindex.html

template files. It then writes them to the target directory

See HTMLframesConverter::generateElementIndex(),HTMLframesConverter::generatePkgElementIndex()

string function HTMLframesConverter::formatTutorialTOC($toc) [line 236]Function Parameters:

array $toc format: array(array('tagname' => section, 'link' => returnsee link, 'id' =>anchor name, 'title' => from title tag),...)

Use the template tutorial_toc.tpl to generate a table of contents for HTML

function HTMLframesConverter::generateElementIndex() [line 1295]Generate alphabetical index of all elements

See Converter::$elements, Converter::walk()

array function HTMLframesConverter::generateFormattedClassTree($class) [line 1040]Function Parameters:

parserClass $class class variable

Page 442 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 490: PhpDocumentor 1.2.2 Manual

returns an array containing the class inheritance tree from the root object to the class

Uses parserClass::getParentClassTree()

function HTMLframesConverter::generateFormattedClassTrees($package) [line 1101]Function Parameters:

string $package package to generate a class tree for

returns a template-enabled array of class trees

See $roots, HTMLConverter::getRootTree()

function HTMLframesConverter::generatePkgElementIndex($package) [line 1378]Function Parameters:

string $package name of a package

Generate alphabetical index of all elements by package and subpackage

See Converter::$pkg_elements, Converter::walk(),HTMLframesConverter::generatePkgElementIndexes()

function HTMLframesConverter::generatePkgElementIndexes() [line 1429]

Page 443 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 491: PhpDocumentor 1.2.2 Manual

See HTMLframesConverter::generatePkgElementIndex()

function HTMLframesConverter::getCData($value) [line 887]mixed function HTMLframesConverter::getClassLink($expr, $package, [$file = false], [$text = false], [$with_a =true]) [line 1469]

Function Parameters:

string $expr name of class string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $with_a return just the URL, or enclose it in an html a tag

See Converter::getClassLink()

function HTMLframesConverter::getCurrentPageLink() [line 218]mixed function HTMLframesConverter::getDefineLink($expr, $package, [$file = false], [$text = false], 4) [line 1501]

Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of define string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getDefineLink()

Page 444 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 492: PhpDocumentor 1.2.2 Manual

function HTMLframesConverter::getExampleLink($path, $title) [line 176]mixed function HTMLframesConverter::getFunctionLink($expr, $package, [$file = false], [$text = false], 4) [line1485]

Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of function string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getFunctionLink()

mixed function HTMLframesConverter::getGlobalLink($expr, $package, [$file = false], [$text = false], 4) [line 1517]Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of global variable string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getGlobalLink()

function HTMLframesConverter::getId($element, [$fullpath = true]) [line 719]array function HTMLframesConverter::getIndexInformation($elt) [line 1190]

Function Parameters:

parserElement $elt descendant of parserElement

Page 445 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 493: PhpDocumentor 1.2.2 Manual

Generate indexing information for given element

See HTMLframesConverter::generateElementIndex()

mixed function HTMLframesConverter::getMethodLink($expr, $class, $package, [$file = false], [$text = false], 5)[line 1550]

Function Parameters:

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of method string $class class containing method string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getMethodLink()

mixed function HTMLframesConverter::getPageLink($expr, $package, [$path = false], [$text = false], 4) [line 1533]Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of procedural page string $package package name string $path full path to look in (used in index generation) boolean $text deprecated

Page 446 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 494: PhpDocumentor 1.2.2 Manual

See Converter::getPageLink()

function HTMLframesConverter::getPageName(&$element) [line 1026]string function HTMLframesConverter::getRootTree($tree, $package) [line 1120]

Function Parameters:

array $tree output from getSortedClassTreeFromClass()

return formatted class tree for the Class Trees page

See Classes::$definitechild, HTMLframesConverter::generateFormattedClassTrees()

string function HTMLframesConverter::getSourceAnchor($sourcefile, $anchor, [$text = ''], [$link = false]) [line 209]Function Parameters:

string $sourcefile full path to source file string $anchor name of anchor string $text link text, if this is a link boolean $link returns either a link or a destination based on this parameter

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a@filesource tag.

function HTMLframesConverter::getSourceLink($path) [line 181] function HTMLframesConverter::getTutorialId($package, $subpackage, $tutorial, $id) [line 882] function HTMLframesConverter::getTutorialTree($tutorial, [$k = false]) [line 458]mixed function HTMLframesConverter::getVarLink($expr, $class, $package, [$file = false], [$text = false], 5) [line1567]

Function Parameters:

Page 447 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 495: PhpDocumentor 1.2.2 Manual

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of var string $class class containing var string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getVarLink()

function HTMLframesConverter::makeLeft() [line 310] function HTMLframesConverter::Output() [line 1624]

This function is not used by HTMLdefaultConverter, but is required by Converter

function HTMLframesConverter::postProcess($text) [line 226]Uses htmlspecialchars() on the input

string function HTMLframesConverter::ProgramExample($example, [$tutorial = false], [$inlinesourceparse = null],[$class = null], [$linenum = null], [$filesourcepath = null]) [line 193]

Function Parameters:

string $example boolean $tutorial

Used to convert the <code> tag in a docblock

int function HTMLframesConverter::rcNatCmp($a, $b) [line 1581]Function Parameters:

mixed $a mixed $b

Page 448 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 496: PhpDocumentor 1.2.2 Manual

does a nat case sort on the specified second level value of the array

int function HTMLframesConverter::rcNatCmp1($a, $b) [line 1597]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array. this one puts constructors first

string function HTMLframesConverter::returnLink($link, $text) [line 305]Function Parameters:

string $link string $text

function HTMLframesConverter::returnSee(&$element, [$eltext = false], [$with_a = true], 3) [line 690]Function Parameters:

boolean 3 determines whether the returned text is enclosed in an <a> tag abstractLink &$element a descendant of abstractlink should be passed, and never text string $eltext text to display in the link boolean $with_a this parameter is not used, and is deprecated

This function takes an abstractLink descendant and returns an html link

function HTMLframesConverter::setTargetDir($dir) [line 1358]calls the converter setTargetDir, and then copies any template images and the

stylesheet if they haven't been copied

Page 449 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 497: PhpDocumentor 1.2.2 Manual

See Converter::setTargetDir()

function HTMLframesConverter::SmartyInit(&$templ) [line 243] function HTMLframesConverter::unmangle($sourcecode) [line 124]

Deprecated in favor of PHP 4.3.0+ tokenizer-based source highlighting

function HTMLframesConverter::writeExample($title, $path, $source) [line 158] function HTMLframesConverter::writeNewPPage($key) [line 605] function HTMLframesConverter::writeSource($path, $value) [line 140]

Function Parameters:

string $path full path to the source file string $value fully highlighted source code

Page 450 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 498: PhpDocumentor 1.2.2 Manual

HTMLSmartyConverter.incHTML output converter for Smarty Template.

This Converter takes output from the Parser and converts it to HTML-ready output foruse with Smarty.

Package Converters Sub-Package HTMLSmarty Version $Revision: 1.69.2.7 $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,parserMethod, parserVar

Class HTMLSmartyConverter [line 41]

HTML output converter. This Converter takes output from the Parser and converts it to HTML-ready output for

use with Smarty.

Package Converters Sub-Package HTMLSmarty Version $Revision: 1.69.2.7 $ Since 1.0rc1 Author Greg Beaver < mailto:[email protected]> See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,

Page 451 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 499: PhpDocumentor 1.2.2 Manual

parserMethod, parserVar

HTMLSmartyConverter::$base_dir

string = [line 94]

target directory passed on the command-line. $targetDir is malleable, always adding package/ and package/subpackage/

subdirectories onto it.

HTMLSmartyConverter::$class

string = [line 75]

name of current class being converted

HTMLSmartyConverter::$class_data

Template = [line 106]

template for the class currently being processed

HTMLSmartyConverter::$class_dir

string = [line 100]

output directory for the current class being processed

HTMLSmartyConverter::$current

array = [line 131]

contains all of the template procedural page element loop data needed for the currenttemplate

HTMLSmartyConverter::$currentclass

array = [line 137]

contains all of the template class element loop data needed for the current template

HTMLSmartyConverter::$juststarted

boolean = false [line 125]

Page 452 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 500: PhpDocumentor 1.2.2 Manual

controls formatting of parser informative output Converter prints: "Converting /path/to/file.php... Procedural Page Elements...

Classes..." Since HTMLdefaultConverter outputs files while converting, it needs to senda \n to start a new line. However, if there is more than one class, output is messy, withmultiple \n's just between class file output. This variable prevents that and is purely cosmetic

HTMLSmartyConverter::$leftindex

array = array('classes' => true, 'pages' => true, 'functions' => false, 'defines' => false, 'globals' => false) [line57]

indexes of elements by package that need to be generated

HTMLSmartyConverter::$name

string = 'Smarty' [line 52]

HTMLSmartyConverter::$outputformat

string = 'HTML' [line 50]

HTMLSmartyConverter::$package_pages

array = array() [line 113]

array of converted package page names. Used to link to the package page in the left index

Var Format: array(package => 1)

HTMLSmartyConverter::$page

string = [line 63]

name of current page being converted

HTMLSmartyConverter::$page_data

Template = [line 81]

template for the procedural page currently being processed

Page 453 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 501: PhpDocumentor 1.2.2 Manual

HTMLSmartyConverter::$page_dir

string = [line 87]

output directory for the current procedural page being processed

HTMLSmartyConverter::$path

string = [line 69]

path of current page being converted

HTMLSmartyConverter::$sort_page_contents_by_type

boolean = true [line 48]

Smarty Converter wants elements sorted by type as well as alphabetically

See Converter::$sort_page_contents_by_type

Constructor function HTMLSmartyConverter::HTMLSmartyConverter(&$allp, &$packp, &$classes, &$procpages,$po, $pp, $qm, $targetDir, $templateDir, $title) [line 157] function HTMLSmartyConverter::convertClass(&$element) [line 987]

Function Parameters:

parserClass &$element

Converts class for template output

See Converter::getFormattedInheritedMethods(), Converter::getFormattedInheritedVars() See Converter::prepareDocBlock(), Converter::generateChildClassList(),HTMLSmartyConverter::generateFormattedClassTree(), Converter::getFormattedConflicts()

function HTMLSmartyConverter::convertDefine(&$element) [line 1046]

Page 454 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 502: PhpDocumentor 1.2.2 Manual

Function Parameters:

parserDefine &$element

Converts defines for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function HTMLSmartyConverter::ConvertErrorLog() [line 841]Create errors.html template file output

This method takes all parsing errors and warnings and spits them out ordered by file andline number.

Global Variable Used ErrorTracker $phpDocumentor_errors: We'll be using it's output facility

function HTMLSmartyConverter::convertFunction(&$element) [line 1025]Function Parameters:

parserFunction &$element

Converts function for template output

See Converter::prepareDocBlock(), parserFunction::getFunctionCall(),Converter::getFormattedConflicts()

function HTMLSmartyConverter::convertGlobal(&$element) [line 1056]Function Parameters:

Page 455 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 503: PhpDocumentor 1.2.2 Manual

parserGlobal &$element

Converts global variables for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function HTMLSmartyConverter::convertInclude(&$element) [line 1036]Function Parameters:

parserInclude &$element

Converts include elements for template output

See Converter::prepareDocBlock()

function HTMLSmartyConverter::convertMethod(&$element) [line 1015]Function Parameters:

parserDefine &$element

Converts class methods for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

Page 456 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 504: PhpDocumentor 1.2.2 Manual

function HTMLSmartyConverter::convertPackagepage(&$element) [line 917]Function Parameters:

parserPackagePage &$element

Converts package page and sets its package as used in $package_pages

function HTMLSmartyConverter::convertPage(&$element) [line 1066]Function Parameters:

parserData &$element

converts procedural pages for template output

See Converter::prepareDocBlock(), Converter::getClassesOnPage()

function HTMLSmartyConverter::ConvertTodoList() [line 806] function HTMLSmartyConverter::convertTutorial(&$element) [line 945]

Function Parameters:

parserTutorial &$element

function HTMLSmartyConverter::convertVar(&$element) [line 1005]Function Parameters:

parserDefine &$element

Converts class variables for template output

See Converter::prepareDocBlock(), Converter::getFormattedConflicts()

Page 457 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 505: PhpDocumentor 1.2.2 Manual

function HTMLSmartyConverter::Convert_RIC($name, $contents) [line 785]Function Parameters:

README|INSTALL|CHANGELOG $name string $contents contents of the file

Convert README/INSTALL/CHANGELOG file contents to output format

function HTMLSmartyConverter::copyMediaRecursively($media, $targetdir, [$subdir = '']) [line 1354] function HTMLSmartyConverter::endClass() [line 293]

Writes out the template file of $class_data and unsets the template to save memory

See Converter::endClass() See registerCurrentClass()

function HTMLSmartyConverter::endPage() [line 459]Writes out the template file of $page_data and unsets the template to save memory

See Converter::endPage() See registerCurrent()

function HTMLSmartyConverter::formatIndex() [line 566]HTMLdefaultConverter uses this function to format template index.html and

packages.html This function generates the package list from $all_packages, eliminating any packages

that don't have any entries in their package index (no files at all, due to @ignore or otherfactors). Then it uses the default package name as the first package index to display. It setsthe right pane to be either a blank file with instructions on making package-level docs, or thepackage-level docs for the default package.

Page 458 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 506: PhpDocumentor 1.2.2 Manual

Global Variable Used string $phpDocumentor_DefaultPackageName: Used to set the startingpackage to display

function HTMLSmartyConverter::formatLeftIndex() [line 658]Generate indexes for li_package.html and classtree output files

This function generates the li_package.html files from the template file left.html. It doesthis by iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve the pre-sorted abstractLink descendants needed forindex generation. Conversion of these links to text is done by returnSee().

Then it uses generateFormattedClassTrees() to create class trees from the template fileclasstrees.html. Output filename is classtrees_packagename.html. This function also unsets$elements and $pkg_elements to free up the considerable memory these two class vars use

See Converter::$page_elements, Converter::$class_elements, Converter::$function_elements

function HTMLSmartyConverter::formatPkgIndex() [line 532]HTMLdefaultConverter chooses to format both package indexes and the complete

index here This function formats output for the elementindex.html and pkgelementindex.html

template files. It then writes them to the target directory

See HTMLSmartyConverter::generateElementIndex(),HTMLSmartyConverter::generatePkgElementIndex()

string function HTMLSmartyConverter::formatTutorialTOC($toc) [line 270]Function Parameters:

array $toc format: array(array('tagname' => section, 'link' => returnsee link, 'id' =>

Page 459 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 507: PhpDocumentor 1.2.2 Manual

anchor name, 'title' => from title tag),...)

Use the template tutorial_toc.tpl to generate a table of contents for HTML

function HTMLSmartyConverter::generateElementIndex() [line 1242]Generate alphabetical index of all elements

See Converter::$elements, Converter::walk()

array function HTMLSmartyConverter::generateFormattedClassTree($class) [line 1094]Function Parameters:

parserClass $class class variable

returns an array containing the class inheritance tree from the root object to the class

Uses parserClass::getParentClassTree()

function HTMLSmartyConverter::generateFormattedClassTrees($package) [line 1155]Function Parameters:

string $package package to generate a class tree for

returns a template-enabled array of class trees

See $roots, HTMLConverter::getRootTree()

Page 460 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 508: PhpDocumentor 1.2.2 Manual

function HTMLSmartyConverter::generatePkgElementIndex($package) [line 1404]Function Parameters:

string $package name of a package

Generate alphabetical index of all elements by package and subpackage

See Converter::$pkg_elements, Converter::walk(),HTMLSmartyConverter::generatePkgElementIndexes()

function HTMLSmartyConverter::generatePkgElementIndexes() [line 1535]

See HTMLSmartyConverter::generatePkgElementIndex()

function HTMLSmartyConverter::getCData($value) [line 903] function HTMLSmartyConverter::getClassContents() [line 402] function HTMLSmartyConverter::getClassLeft() [line 383]mixed function HTMLSmartyConverter::getClassLink($expr, $package, [$file = false], [$text = false], [$with_a =true]) [line 1575]

Function Parameters:

string $expr name of class string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $with_a return just the URL, or enclose it in an html a tag

See Converter::getClassLink()

Page 461 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 509: PhpDocumentor 1.2.2 Manual

function HTMLSmartyConverter::getCurrentPageLink() [line 240]mixed function HTMLSmartyConverter::getDefineLink($expr, $package, [$file = false], [$text = false], 4) [line 1607]

Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of define string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getDefineLink()

function HTMLSmartyConverter::getExampleLink($path, $title) [line 199]mixed function HTMLSmartyConverter::getFunctionLink($expr, $package, [$file = false], [$text = false], 4) [line1591]

Function Parameters:

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of function string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getFunctionLink()

mixed function HTMLSmartyConverter::getGlobalLink($expr, $package, [$file = false], [$text = false], 4) [line 1623]Function Parameters:

Page 462 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 510: PhpDocumentor 1.2.2 Manual

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of global variable string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getGlobalLink()

function HTMLSmartyConverter::getId($element, [$fullpath = true]) [line 728]mixed function HTMLSmartyConverter::getMethodLink($expr, $class, $package, [$file = false], [$text = false], 5)[line 1656]

Function Parameters:

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of method string $class class containing method string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getMethodLink()

function HTMLSmartyConverter::getPageContents() [line 418] function HTMLSmartyConverter::getPageLeft() [line 435]mixed function HTMLSmartyConverter::getPageLink($expr, $package, [$path = false], [$text = false], 4) [line 1639]

Function Parameters:

Page 463 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 511: PhpDocumentor 1.2.2 Manual

boolean 4 return just the URL, or enclose it in an html a tag string $expr name of procedural page string $package package name string $path full path to look in (used in index generation) boolean $text deprecated

See Converter::getPageLink()

function HTMLSmartyConverter::getPageName(&$element) [line 1080]string function HTMLSmartyConverter::getRootTree($tree, $package) [line 1174]

Function Parameters:

array $tree output from getSortedClassTreeFromClass()

return formatted class tree for the Class Trees page

See Classes::$definitechild, HTMLSmartyConverter::generateFormattedClassTrees()

string function HTMLSmartyConverter::getSourceAnchor($sourcefile, $anchor, [$text = ''], [$link = false]) [line 231]Function Parameters:

string $sourcefile full path to source file string $anchor name of anchor string $text link text, if this is a link boolean $link returns either a link or a destination based on this parameter

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a

Page 464 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 512: PhpDocumentor 1.2.2 Manual

@filesource tag.

function HTMLSmartyConverter::getSourceLink($path) [line 204] function HTMLSmartyConverter::getTutorialId($package, $subpackage, $tutorial, $id) [line 908] function HTMLSmartyConverter::getTutorialList() [line 316] function HTMLSmartyConverter::getTutorialTree($tutorial, [$k = false]) [line 343]mixed function HTMLSmartyConverter::getVarLink($expr, $class, $package, [$file = false], [$text = false], 5) [line1673]

Function Parameters:

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of var string $class class containing var string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getVarLink()

function HTMLSmartyConverter::makeLeft() [line 488] function HTMLSmartyConverter::Output() [line 1730]

This function is not used by HTMLdefaultConverter, but is required by Converter

function HTMLSmartyConverter::postProcess($text) [line 260]Uses htmlspecialchars() on the input

string function HTMLSmartyConverter::ProgramExample($example, [$tutorial = false], [$inlinesourceparse = null],[$class = null], [$linenum = null], [$filesourcepath = null]) [line 215]

Function Parameters:

string $example

Used to convert the <code> tag in a docblock

Page 465 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 513: PhpDocumentor 1.2.2 Manual

int function HTMLSmartyConverter::rcNatCmp($a, $b) [line 1687]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array

int function HTMLSmartyConverter::rcNatCmp1($a, $b) [line 1703]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array. this one puts constructors first

string function HTMLSmartyConverter::returnLink($link, $text) [line 483]Function Parameters:

string $link string $text

function HTMLSmartyConverter::returnSee(&$element, [$eltext = false], [$with_a = true], 3) [line 699]Function Parameters:

boolean 3 determines whether the returned text is enclosed in an &lt;a> tag abstractLink &$element a descendant of abstractlink should be passed, and never text string $eltext text to display in the link boolean $with_a this parameter is not used, and is deprecated

This function takes an abstractLink descendant and returns an html link

Page 466 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 514: PhpDocumentor 1.2.2 Manual

function HTMLSmartyConverter::setTargetDir($dir) [line 1384]calls the converter setTargetDir, and then copies any template images and the

stylesheet if they haven't been copied

See Converter::setTargetDir()

function HTMLSmartyConverter::SmartyInit(&$templ) [line 277] function HTMLSmartyConverter::unmangle($sourcecode) [line 245] function HTMLSmartyConverter::writeExample($title, $path, $source) [line 181] function HTMLSmartyConverter::writeNewPPage($key) [line 626] function HTMLSmartyConverter::writeRIC() [line 791] function HTMLSmartyConverter::writeSource($path, $value) [line 163]

Page 467 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 515: PhpDocumentor 1.2.2 Manual

class.phpdocpdf.phpHelper class, extension to ezpdf

Package Converters Sub-Package PDFdefault

include_once 'phpDocumentor/Converters/PDF/default/ParserPDF.inc' [line 27]

include_once 'phpDocumentor/Converters/PDF/default/class.ezpdf.php' [line 26]

ezPdf libraries

Page 468 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 516: PhpDocumentor 1.2.2 Manual

ParserPDF.incThis class handles the XML-based CezPDF markup language created to allow

templates for the PDFdefaultConverter

Package Converters Sub-Package PDFdefault Since 1.2 Author Greg Beaver < mailto:[email protected]>

PHPDOCUMENTOR_PDF_EVENT_CONTENT = 601 [line 32]used for parsing stuff between <text>

PHPDOCUMENTOR_PDF_EVENT_FONT = 602 [line 36]when <font> is found in an ezText input

PHPDOCUMENTOR_PDF_EVENT_NEWPAGE = 603 [line 40]when <newpage/> is found in an ezText input

PHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION = 604 [line 44]when <pdffunction> is found in an ezText input

PHPDOCUMENTOR_PDF_EVENT_TEXT = 600 [line 28]when <text> is found in an ezText input

PHPDOCUMENTOR_PDF_STATE_CONTENT = 701 [line 34]used for parsing stuff between <text>

PHPDOCUMENTOR_PDF_STATE_FONT = 702 [line 38]when <font> is found in an ezText input

PHPDOCUMENTOR_PDF_STATE_NEWPAGE = 703 [line 42]when <newpage/> is found in an ezText input

Page 469 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 517: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDF_STATE_PDFFUNCTION = 704 [line 46]when <pdffunction> is found in an ezText input

PHPDOCUMENTOR_PDF_STATE_TEXT = 700 [line 30]when <text> is found in an ezText input

Page 470 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 518: PhpDocumentor 1.2.2 Manual

PDFdefaultConverter.inc

Package Converters Sub-Package PDFdefault

include_once 'phpDocumentor/Converters/PDF/default/class.phpdocpdf.php' [line 26]

The Cezpdf class library

Class PDFdefaultConverter [line 39]

PDF output converter. This Converter takes output from the Parser and converts it to PDF-ready output for use

with Cezpdf. This is now beta code

Package Converters Sub-Package PDFdefault TODO Implement links to conflicts/inheritance Version $Id: PDFdefaultConverter.inc,v 1.43.2.7 2003/07/29 07:28:12 CelloG Exp $ Since 1.1 Author Greg Beaver < mailto:[email protected]>

PDFdefaultConverter::$classpackage_pagenums

mixed = array() [line 49]

PDFdefaultConverter::$curclasspackage

Page 471 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 519: PhpDocumentor 1.2.2 Manual

mixed = false [line 55]

PDFdefaultConverter::$curpagepackage

mixed = false [line 54]

PDFdefaultConverter::$leftindex

mixed = array('classes' => false, 'pages' => false, 'functions' => false, 'defines' => false, 'globals' => false)[line 47]

PDFdefaultConverter::$name

string = 'default' [line 53]

Var always default

PDFdefaultConverter::$outputformat

string = 'PDF' [line 51]

Var always PDF

PDFdefaultConverter::$pagepackage_pagenums

mixed = array() [line 48]

PDFdefaultConverter::$pdf

Cezpdf = false [line 60]

PDFdefaultConverter::$ric_set

mixed = array() [line 61]

PDFdefaultConverter::$smarty_dir

mixed = [line 56]

PDFdefaultConverter::$sort_absolutely_everything

boolean = true [line 46]

default PDF Converter wants elements sorted by type as well as alphabetically

Page 472 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 520: PhpDocumentor 1.2.2 Manual

See Converter::$sort_page_contents_by_type

PDFdefaultConverter::$_sourcecode

array = [line 68]

Source files for appendix C are stored here Format: array(array(package => packagename, code => array(highlightedsource

code 1, ...)))

Constructor function PDFdefaultConverter::PDFdefaultConverter(&$allp, &$packp, &$classes, &$procpages, $po,$pp, $qm, $targetDir, $templateDir, $title) [line 72]

See Converter::Converter()

function PDFdefaultConverter::convertClass(&$element) [line 410] function PDFdefaultConverter::convertDefine(&$element) [line 490] function PDFdefaultConverter::convertDocBlock(&$element) [line 231] function PDFdefaultConverter::convertFunction(&$element) [line 457] function PDFdefaultConverter::convertGlobal(&$element) [line 325] function PDFdefaultConverter::convertInclude(&$element) [line 443] function PDFdefaultConverter::convertMethod(&$element) [line 352] function PDFdefaultConverter::convertPackagepage(&$element) [line 587]

Deprecated html package pages just don't work with PDF, use phpDocumentor Tutorials

function PDFdefaultConverter::convertPage(&$element) [line 511] function PDFdefaultConverter::convertParams(&$element) [line 307] function PDFdefaultConverter::convertTutorial(&$element) [line 594] function PDFdefaultConverter::convertVar(&$element) [line 387] function PDFdefaultConverter::Convert_RIC($name, $contents) [line 226]

Function Parameters:

README|INSTALL|CHANGELOG $name string $contents contents of the file

Page 473 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 521: PhpDocumentor 1.2.2 Manual

Convert README/INSTALL/CHANGELOG file contents to output format

function PDFdefaultConverter::generateFormattedClassTrees($package) [line 614]Function Parameters:

string $package package to generate a class tree for

returns a template-enabled array of class trees

See $roots, PDFdefaultConverter::getRootTree()

function PDFdefaultConverter::getCData($value) [line 579]mixed function PDFdefaultConverter::getClassLink($expr, $package, [$file = false], [$text = false]) [line 792]

Function Parameters:

string $expr name of class string $package package name string $file full path to look in (used in index generation)

See Converter::getClassLink()

mixed function PDFdefaultConverter::getDefineLink($expr, $package, [$file = false], [$text = false]) [line 822]Function Parameters:

string $expr name of define string $package package name string $file full path to look in (used in index generation)

Page 474 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 522: PhpDocumentor 1.2.2 Manual

boolean $text deprecated

See Converter::getDefineLink()

function PDFdefaultConverter::getExampleLink($path, $title) [line 124] function PDFdefaultConverter::getFileSourceName($path, [$anchor = '']) [line 136]mixed function PDFdefaultConverter::getFunctionLink($expr, $package, [$file = false], [$text = false]) [line 807]

Function Parameters:

string $expr name of function string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getFunctionLink()

mixed function PDFdefaultConverter::getGlobalLink($expr, $package, [$file = false], [$text = false]) [line 837]Function Parameters:

string $expr name of global variable string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getGlobalLink()

Page 475 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 523: PhpDocumentor 1.2.2 Manual

function PDFdefaultConverter::getGlobalValue($value) [line 347]mixed function PDFdefaultConverter::getMethodLink($expr, $class, $package, [$file = false], [$text = false]) [line868]

Function Parameters:

string $expr name of method string $class class containing method string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

See Converter::getMethodLink()

mixed function PDFdefaultConverter::getPageLink($expr, $package, [$path = false], [$text = false]) [line 852]Function Parameters:

string $expr name of procedural page string $package package name string $path full path to look in (used in index generation) boolean $text deprecated

See Converter::getPageLink()

function PDFdefaultConverter::getPageName(&$element) [line 568]string function PDFdefaultConverter::getRootTree($tree, $package) [line 633]

Function Parameters:

array $tree output from getSortedClassTreeFromClass()

Page 476 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 524: PhpDocumentor 1.2.2 Manual

return formatted class tree for the Class Trees page

See Classes::$definitechild, PDFdefaultConverter::generateFormattedClassTrees()

string function PDFdefaultConverter::getSourceAnchor($sourcefile, $anchor, [$text = ''], [$link = false]) [line 151]Function Parameters:

string $sourcefile full path to source file string $anchor name of anchor string $text link text, if this is a link boolean $link returns either a link or a destination based on this parameter

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a@filesource tag.

function PDFdefaultConverter::getSourceLink($path) [line 130]1 function PDFdefaultConverter::getState() [line 899] function PDFdefaultConverter::getTutorialId($package, $subpackage, $tutorial, $id) [line 574]mixed function PDFdefaultConverter::getVarLink($expr, $class, $package, [$file = false], [$text = false], 5) [line 885]

Function Parameters:

boolean 5 return just the URL, or enclose it in an html a tag string $expr name of var string $class class containing var string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

Page 477 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 525: PhpDocumentor 1.2.2 Manual

See Converter::getVarLink()

function PDFdefaultConverter::mystrnatcasecmp($a, $b) [line 779] function PDFdefaultConverter::Output([$title = 'Generated Documentation']) [line 700]

calls Cezpdf::ezOutput() and writes documentation.pdf to targetDir

function PDFdefaultConverter::postProcess($text) [line 105]string function PDFdefaultConverter::returnLink($link, $text) [line 216]

Function Parameters:

string $link string $text

function PDFdefaultConverter::returnSee(&$element, [$eltext = false]) [line 168]Function Parameters:

abstractLink &$element a descendant of abstractlink should be passed, and never text string $eltext text to display in the link

Returns a bookmark using Cezpdf 009

function PDFdefaultConverter::setTemplateDir($dir) [line 892]string function PDFdefaultConverter::TranslateTag($name, $attr, $cdata, $unconvertedcdata) [line 551]

Function Parameters:

string $name tag name string $attr any attributes Format: array(name => value) string $cdata the tag contents, if any string $unconvertedcdata the tag contents, if any, unpost-processed

Used to translate an XML DocBook tag from a tutorial by reading the options.ini file forthe template.

Page 478 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 526: PhpDocumentor 1.2.2 Manual

function PDFdefaultConverter::unmangle($notused, $source) [line 907]

See Converter::unmangle()

function PDFdefaultConverter::writeExample($title, $path, $source) [line 110] function PDFdefaultConverter::writeSource($path, $value) [line 90]

Class PDFParser [line 55]

Package Converters Sub-Package PDFdefault Usedby phpdocpdf::ezText() - extracts all meta-tags and processes text for output Version $Id: Parser.inc,v 1.183.2.7 2003/08/19 15:47:14 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]>

Constructor function PDFParser::PDFParser() [line 76]Sets up the wordparser for this class

function PDFParser::getParserEventName($value) [line 530]Function Parameters:

integer $value

Return the name of the parser event

bool function PDFParser::parse($parse_data, $fontdir, &$pdf, [$debug = false]) [line 92]Function Parameters:

Page 479 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 527: PhpDocumentor 1.2.2 Manual

string $parse_data text to parse for PDFParser XML tags string $fontdir full path to the font directory phpdocpdf &$pdf boolean $debug determines whether output is saved in a variable or added directlyto the output

Parse text for PDFParser XML tags, and add the text to the PDF file

Static Variable Used integer $endrecur: used for recursion limiting if a handler for an event is notfound

function PDFParser::setupStates() [line 466]setup the parser tokens, and the pushEvent/popEvent arrays

See Publisher::$tokens, Publisher::$pushEvent, Publisher::$popEvent

Class phpdocpdf [line 35]

Package Converters Sub-Package PDFdefault Version 009 (versioning is linked to class.pdf.php) released under a public domain licence. Author Wayne Munro, R&OS Ltd, http://www.ros.co.nz/pdf

Page 480 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 528: PhpDocumentor 1.2.2 Manual

phpdocpdf::$converter

mixed = [line 42]

phpdocpdf::$font_dir

mixed = false [line 40]

phpdocpdf::$indents

mixed = array() [line 39]

phpdocpdf::$indexContents

mixed = array() [line 38]

phpdocpdf::$listType

mixed = 'ordered' [line 44]

phpdocpdf::$reportContents

mixed = array() [line 37]

phpdocpdf::$set_pageNumbering

mixed = false [line 41]

phpdocpdf::$_colorStack

mixed = array() [line 45]

phpdocpdf::$_save

mixed = '' [line 43]

Constructor function phpdocpdf::phpdocpdf(&$pdfconverter, $fontdir, [$paper = 'a4'], [$orientation = 'portrait']) [line47] function phpdocpdf::addMessage($message) [line 248] function phpdocpdf::bullet($Data) [line 307]

Author Murray Shields

function phpdocpdf::dots($info) [line 160] function phpdocpdf::ezNewPage([$debug = false]) [line 326] function phpdocpdf::ezOutput([$debug = false], $template) [line 217] function phpdocpdf::ezProcessText($text) [line 255] function phpdocpdf::ezText($text, [$size = 0], [$options = array()], [$test = 0]) [line 200]

Uses PDFParser - extracts all meta-tags and processes text for output

Page 481 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 529: PhpDocumentor 1.2.2 Manual

function phpdocpdf::getColor() [line 57]This really should be in the parent class

function phpdocpdf::getYPlusOffset($offset) [line 243] function phpdocpdf::indent($info) [line 285] function phpdocpdf::index($info) [line 127] function phpdocpdf::IndexLetter($info) [line 137] function phpdocpdf::orderedBullet($info) [line 321] function phpdocpdf::rf($info) [line 117] function phpdocpdf::setColorArray($color) [line 62] function phpdocpdf::setHTMLColor($color) [line 90] function phpdocpdf::setupTOC() [line 210] function phpdocpdf::textcolor($info) [line 96] function phpdocpdf::validHTMLColor($color) [line 85] function phpdocpdf::_ezText($text, [$size = 0], [$options = array()], [$test = 0]) [line 238]

Page 482 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 530: PhpDocumentor 1.2.2 Manual

XMLDocBookpeardoc2Converter.incXML output converter for DocBook.

This Converter takes output from the Parser and converts it to DocBook output

Package Converters Sub-Package XMLDocBook Version $Id: XMLDocBookpeardoc2Converter.inc,v 1.29.2.8 2003/08/13 18:05:58 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]> See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,parserMethod, parserVar

Page 483 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 531: PhpDocumentor 1.2.2 Manual

XMLDocBookConverter.incXML output converter for DocBook.

This Converter takes output from the Parser and converts it to DocBook output

Package Converters Sub-Package XMLDocBook Version $Id: XMLDocBookConverter.inc,v 1.38.2.2 2003/07/30 00:39:45 CelloG Exp $ Since 1.0 Author Greg Beaver < mailto:[email protected]> See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,parserMethod, parserVar

Class XMLDocBookConverter [line 43]

XML DocBook converter. This Converter takes output from the Parser and converts it to DocBook output

Package Converters Sub-Package XMLDocBook TODO indexes for other DocBook converters not based on peardoc TODO templates Version $Id: XMLDocBookConverter.inc,v 1.38.2.2 2003/07/30 00:39:45 CelloG Exp $ Since 1.0 Author Greg Beaver < mailto:[email protected]>

Page 484 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 532: PhpDocumentor 1.2.2 Manual

See parserDocBlock, parserInclude, parserPage, parserClass, parserDefine, parserFunction,parserMethod, parserVar

XMLDocBookConverter::$base_dir

string = [line 101]

target directory passed on the command-line. $targetDir is malleable, always adding package/ and package/subpackage/

subdirectories onto it.

XMLDocBookConverter::$category

string = [line 162]

peardoc2 Category

XMLDocBookConverter::$class

string = [line 82]

name of current class being converted

XMLDocBookConverter::$class_data

Template = [line 113]

template for the class currently being processed

XMLDocBookConverter::$class_dir

string = [line 107]

output directory for the current class being processed

XMLDocBookConverter::$current

array = [line 138]

contains all of the template procedural page element loop data needed for the currenttemplate

XMLDocBookConverter::$currentclass

Page 485 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 533: PhpDocumentor 1.2.2 Manual

array = [line 144]

contains all of the template class element loop data needed for the current template

XMLDocBookConverter::$function_data

mixed = array() [line 155]

XMLDocBookConverter::$juststarted

boolean = false [line 132]

controls formatting of parser informative output Converter prints: "Converting /path/to/file.php... Procedural Page Elements...

Classes..." Since HTMLdefaultConverter outputs files while converting, it needs to senda \n to start a new line. However, if there is more than one class, output is messy, withmultiple \n's just between class file output. This variable prevents that and is purely cosmetic

XMLDocBookConverter::$leftindex

array = array('classes' => true, 'pages' => true, 'functions' => false, 'defines' => false, 'globals' => false) [line59]

indexes of elements by package that need to be generated

XMLDocBookConverter::$local

boolean = true [line 64]

whether a @see is going to be in the $base_dir, or in a package/subpackagesubdirectory of $base_dir

XMLDocBookConverter::$method_data

mixed = array() [line 156]

XMLDocBookConverter::$name

string = 'DocBook' [line 54]

XMLDocBookConverter::$outputformat

string = 'XML' [line 52]

XMLDocBookConverter::$package_pages

array = array() [line 120]

array of converted package page names.

Page 486 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 534: PhpDocumentor 1.2.2 Manual

Used to link to the package page in the left index

Var Format: array(package => 1)

XMLDocBookConverter::$page

string = [line 70]

name of current page being converted

XMLDocBookConverter::$page_data

Template = [line 88]

template for the procedural page currently being processed

XMLDocBookConverter::$page_dir

string = [line 94]

output directory for the current procedural page being processed

XMLDocBookConverter::$path

string = [line 76]

path of current page being converted

XMLDocBookConverter::$sort_page_contents_by_type

boolean = true [line 50]

XMLDocBookConverter wants elements sorted by type as well as alphabetically

See Converter::$sort_page_contents_by_type

Page 487 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 535: PhpDocumentor 1.2.2 Manual

XMLDocBookConverter::$sourceloc

mixed = '' [line 157]

XMLDocBookConverter::$template_options

array = array('usepear' => false) [line 153]

template options. Currently only 1 recognized option usepear usepear tells the getLink() function to return a package link to PEAR and PEAR_ERROR

if possible, and to link directly to the fully-delimited link package#class.method orpackage#file.method in PEAR style, if possible, even if the package is not parsed. This willallow parsing of separate PEAR packages without parsing the entire thing at once!

Constructor function XMLDocBookConverter::XMLDocBookConverter(&$allp, &$packp, &$classes, &$procpages,$po, $pp, $qm, $targetDir, $templateDir, $title) [line 167]

sets $base_dir to $targetDir

See Converter::Converter()

function XMLDocBookConverter::convertClass(&$element) [line 805]Function Parameters:

parserClass &$element

Converts class for template output

See Converter::getFormattedInheritedMethods(), Converter::getFormattedInheritedVars() See XMLDocBookConverter::prepareDocBlock(), Converter::generateChildClassList(),XMLDocBookConverter::generateFormattedClassTree(), Converter::getFormattedConflicts()

function XMLDocBookConverter::convertDefine(&$element) [line 1015]Function Parameters:

Page 488 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 536: PhpDocumentor 1.2.2 Manual

parserDefine &$element

Converts defines for template output

See XMLDocBookConverter::prepareDocBlock(), Converter::getFormattedConflicts()

function XMLDocBookConverter::ConvertErrorLog() [line 624]Create errors.html template file output

This method takes all parsing errors and warnings and spits them out ordered by file andline number.

Global Variable Used ErrorTracker $phpDocumentor_errors: We'll be using it's output facility

function XMLDocBookConverter::convertFunction(&$element) [line 946]Function Parameters:

parserFunction &$element

Converts function for template output

See XMLDocBookConverter::prepareDocBlock(), parserFunction::getFunctionCall(),Converter::getFormattedConflicts()

function XMLDocBookConverter::convertGlobal(&$element) [line 1034]Function Parameters:

parserGlobal &$element

Page 489 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 537: PhpDocumentor 1.2.2 Manual

Converts global variables for template output

See XMLDocBookConverter::prepareDocBlock(), Converter::getFormattedConflicts()

function XMLDocBookConverter::convertInclude(&$element) [line 997]Function Parameters:

parserInclude &$element

Converts include elements for template output

See XMLDocBookConverter::prepareDocBlock()

function XMLDocBookConverter::convertMethod(&$element) [line 867]Function Parameters:

parserMethod &$element

Converts method for template output

See XMLDocBookConverter::prepareDocBlock(), parserMethod::getFunctionCall(),Converter::getFormattedDescMethods(), Converter::getFormattedOverrides()

function XMLDocBookConverter::convertPackagePage(&$element) [line 711]Function Parameters:

Page 490 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 538: PhpDocumentor 1.2.2 Manual

parserPackagePage &$element

Converts package page and sets its package as used in $package_pages

function XMLDocBookConverter::convertPage(&$element) [line 1056]Function Parameters:

parserData &$element

converts procedural pages for template output

See XMLDocBookConverter::prepareDocBlock(), Converter::getClassesOnPage()

function XMLDocBookConverter::convertTutorial(&$element) [line 735] function XMLDocBookConverter::convertVar(&$element) [line 768]

Function Parameters:

parserVar &$element

Converts class variables for template output.

See XMLDocBookConverter::prepareDocBlock(), Converter::getFormattedOverrides()

function XMLDocBookConverter::endClass() [line 216]Writes out the template file of $class_data and unsets the template to save memory

See Converter::endClass()

Page 491 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 539: PhpDocumentor 1.2.2 Manual

See registerCurrentClass()

function XMLDocBookConverter::endPage() [line 248]Writes out the template file of $page_data and unsets the template to save memory

See Converter::endPage() See registerCurrent()

function XMLDocBookConverter::formatIndex() [line 359]HTMLdefaultConverter uses this function to format template index.html and

packages.html This function generates the package list from $all_packages, eliminating any packages

that don't have any entries in their package index (no files at all, due to @ignore or otherfactors). Then it uses the default package name as the first package index to display. It setsthe right pane to be either a blank file with instructions on making package-level docs, or thepackage-level docs for the default package.

Global Variable Used string $phpDocumentor_DefaultPackageName: Used to set the startingpackage to display

function XMLDocBookConverter::formatLeftIndex() [line 437]Generate indexes for li_package.html and classtree output files

This function generates the li_package.html files from the template file left.html. It doesthis by iterating through each of the $page_elements, $class_elements and $function_elements arrays to retrieve the pre-sorted abstractLink descendants needed forindex generation. Conversion of these links to text is done by returnSee(). The $localparameter is set to false to ensure that paths are correct.

Then it uses generateFormattedClassTrees() to create class trees from the template fileclasstrees.html. Output filename is classtrees_packagename.html. This function also unsets$elements and $pkg_elements to free up the considerable memory these two class vars use

Page 492 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 540: PhpDocumentor 1.2.2 Manual

See Converter::$page_elements, Converter::$class_elements, Converter::$function_elements

function XMLDocBookConverter::formatPkgIndex() [line 326]HTMLdefaultConverter chooses to format both package indexes and the complete

index here This function formats output for the elementindex.html and pkgelementindex.html

template files. It then writes them to the target directory

See XMLDocBookConverter::generateElementIndex(),XMLDocBookConverter::generatePkgElementIndex()

function XMLDocBookConverter::generateElementIndex() [line 1253]Generate alphabetical index of all elements

See Converter::$elements, Converter::walk()

array function XMLDocBookConverter::generateFormattedClassTree($class) [line 1116]Function Parameters:

parserClass $class class variable

returns an array containing the class inheritance tree from the root object to the class

Uses parserClass::getParentClassTree()

Page 493 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 541: PhpDocumentor 1.2.2 Manual

function XMLDocBookConverter::generateFormattedClassTrees($package) [line 1166]Function Parameters:

string $package package to generate a class tree for

returns a template-enabled array of class trees

See $roots, HTMLConverter::getRootTree()

function XMLDocBookConverter::generatePkgElementIndex($package) [line 1441]Function Parameters:

string $package name of a package

Generate alphabetical index of all elements by package and subpackage

See Converter::$pkg_elements, Converter::walk(),XMLDocBookConverter::generatePkgElementIndexes()

function XMLDocBookConverter::generatePkgElementIndexes() [line 1581]

See XMLDocBookConverter::generatePkgElementIndex()

function XMLDocBookConverter::getCData($value) [line 702]mixed function XMLDocBookConverter::getClassLink($expr, $package, [$file = false], [$text = false], [$local = true],[$with_a = true]) [line 1621]

Function Parameters:

string $expr name of class

Page 494 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 542: PhpDocumentor 1.2.2 Manual

string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getClassLink()

mixed function XMLDocBookConverter::getDefineLink($expr, $package, [$file = false], [$text = false], [$local =true]) [line 1653]

Function Parameters:

string $expr name of define string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getDefineLink()

mixed function XMLDocBookConverter::getFunctionLink($expr, $package, [$file = false], [$text = false], [$local =true]) [line 1637]

Function Parameters:

string $expr name of function string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

Page 495 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 543: PhpDocumentor 1.2.2 Manual

boolean $local return just the URL, or enclose it in an html a tag

See Converter::getFunctionLink()

mixed function XMLDocBookConverter::getGlobalLink($expr, $package, [$file = false], [$text = false], [$local =true]) [line 1669]

Function Parameters:

string $expr name of global variable string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getGlobalLink()

string function XMLDocBookConverter::getId(&$el) [line 573]Function Parameters:

mixed &$el descendant of parserElement or parserData/parserPage

Get the id value needed to allow linking

See parserElement, parserData, parserPage

Page 496 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 544: PhpDocumentor 1.2.2 Manual

function XMLDocBookConverter::getLink($expr, [$package = false], [$packages = false]) [line 175]do that stuff in $template_options

mixed function XMLDocBookConverter::getMethodLink($expr, $class, $package, [$file = false], [$text = false],[$local = true]) [line 1702]

Function Parameters:

string $expr name of method string $class class containing method string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getMethodLink()

mixed function XMLDocBookConverter::getPageLink($expr, $package, [$path = false], [$text = false], [$local =true]) [line 1685]

Function Parameters:

string $expr name of procedural page string $package package name string $path full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getPageLink()

Page 497 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 545: PhpDocumentor 1.2.2 Manual

function XMLDocBookConverter::getPageName(&$element) [line 1103]string function XMLDocBookConverter::getRootTree($tree, $package) [line 1185]

Function Parameters:

array $tree output from getSortedClassTreeFromClass()

return formatted class tree for the Class Trees page

See Classes::$definitechild, XMLDocBookConverter::generateFormattedClassTrees()

function XMLDocBookConverter::getTutorialId($package, $subpackage, $tutorial, $id) [line 695]mixed function XMLDocBookConverter::getVarLink($expr, $class, $package, [$file = false], [$text = false], [$local =true]) [line 1719]

Function Parameters:

string $expr name of var string $class class containing var string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getVarLink()

function XMLDocBookConverter::makeLeft() [line 281] function XMLDocBookConverter::Output() [line 1776]

This function is not used by HTMLdefaultConverter, but is required by Converter

Page 498 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 546: PhpDocumentor 1.2.2 Manual

function XMLDocBookConverter::postProcess($text) [line 685] function XMLDocBookConverter::prepareDocBlock(&$element, [$nopackage = true]) [line 690]int function XMLDocBookConverter::rcNatCmp($a, $b) [line 1733]

Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array

int function XMLDocBookConverter::rcNatCmp1($a, $b) [line 1749]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array. this one puts constructors first

string function XMLDocBookConverter::returnLink($link, $text) [line 276]Function Parameters:

string $link string $text

function XMLDocBookConverter::returnSee(&$element, [$eltext = false], [$local = true], [$with_a = true]) [line 475]Function Parameters:

abstractLink &$element a descendant of abstractlink should be passed, and never text string $eltext text to display in the link boolean $local this parameter is not used, and is deprecated boolean $with_a determines whether the returned text is enclosed in an &lt;a> tag

Page 499 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 547: PhpDocumentor 1.2.2 Manual

This function takes an abstractLink descendant and returns an html link

function XMLDocBookConverter::setTargetDir($dir) [line 1381]calls the converter setTargetDir, and then copies any template images and the

stylesheet if they haven't been copied

See Converter::setTargetDir()

function XMLDocBookConverter::setTemplateDir($dir) [line 1371] function XMLDocBookConverter::SmartyInit(&$templ) [line 204] function XMLDocBookConverter::type_adjust($typename) [line 185] function XMLDocBookConverter::unmangle($s, $sourcecode) [line 180] function XMLDocBookConverter::writeNewPPage($key) [line 405]

Class XMLDocBookpeardoc2Converter [line 48]

XML DocBook converter. This Converter takes output from the Parser and converts it to DocBook output for PEAR

documentation.

This Converter differs from the parent DocBook Converter in that it does not recognize thepossibility of procedural pages or of functions! All functions must be defined as staticmethods for namespace purposes. In addition, all constants and global variables for apackage are grouped together as per peardoc2 requirements. Include statements are notdocumented. If you want to document a normal project, don't use the peardoc2 converter,use the DocBook converter.

Package Converters Sub-Package XMLDocBook Version $Id: XMLDocBookpeardoc2Converter.inc,v 1.29.2.8 2003/08/13 18:05:58 CelloG Exp $ Since 1.2 Author Greg Beaver < mailto:[email protected]>

Page 500 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 548: PhpDocumentor 1.2.2 Manual

XMLDocBookpeardoc2Converter::$base_dir

string = [line 118]

target directory passed on the command-line. $targetDir is malleable, always adding package/ and package/subpackage/

subdirectories onto it.

XMLDocBookpeardoc2Converter::$category

string = [line 191]

peardoc2 Category

XMLDocBookpeardoc2Converter::$class

string = [line 87]

name of current class being converted

XMLDocBookpeardoc2Converter::$class_data

Template = [line 130]

template for the class currently being processed

XMLDocBookpeardoc2Converter::$class_dir

string = [line 124]

output directory for the current class being processed

XMLDocBookpeardoc2Converter::$current

array = [line 160]

contains all of the template procedural page element loop data needed for the currenttemplate

XMLDocBookpeardoc2Converter::$currentclass

array = [line 166]

Page 501 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 549: PhpDocumentor 1.2.2 Manual

contains all of the template class element loop data needed for the current template

XMLDocBookpeardoc2Converter::$function_data

mixed = array() [line 182]

XMLDocBookpeardoc2Converter::$juststarted

boolean = false [line 154]

controls formatting of parser informative output Converter prints: "Converting /path/to/file.php... Procedural Page Elements...

Classes..." Since HTMLdefaultConverter outputs files while converting, it needs to senda \n to start a new line. However, if there is more than one class, output is messy, withmultiple \n's just between class file output. This variable prevents that and is purely cosmetic

XMLDocBookpeardoc2Converter::$leftindex

array = array('classes' => true, 'pages' => false, 'functions' => false, 'defines' => true, 'globals' => true) [line64]

indexes of elements by package that need to be generated

XMLDocBookpeardoc2Converter::$local

boolean = true [line 69]

whether a @see is going to be in the $base_dir, or in a package/subpackagesubdirectory of $base_dir

XMLDocBookpeardoc2Converter::$method_data

mixed = array() [line 183]

XMLDocBookpeardoc2Converter::$name

string = 'DocBook/peardoc2' [line 59]

XMLDocBookpeardoc2Converter::$outputformat

string = 'XML' [line 57]

XMLDocBookpeardoc2Converter::$packagexml

Smarty = [line 143]

Contents of the packagename.xml file are stored in this template variable

XMLDocBookpeardoc2Converter::$package_pages

Page 502 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 550: PhpDocumentor 1.2.2 Manual

array = array() [line 137]

array of converted package page names. Used to link to the package page in the left index

Var Format: array(package => 1)

XMLDocBookpeardoc2Converter::$page

string = [line 75]

name of current page being converted

XMLDocBookpeardoc2Converter::$page_data

Template = [line 93]

template for the procedural page currently being processed

XMLDocBookpeardoc2Converter::$page_dir

string = [line 99]

output directory for the current procedural page being processed

XMLDocBookpeardoc2Converter::$path

string = [line 81]

path of current page being converted

XMLDocBookpeardoc2Converter::$sort_absolutely_everything

mixed = true [line 171]

Pass elements by package, simplifies generation of package.xml/category.xml

XMLDocBookpeardoc2Converter::$sort_page_contents_by_type

boolean = true [line 55]

Page 503 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 551: PhpDocumentor 1.2.2 Manual

XMLDocBookConverter wants elements sorted by type as well as alphabetically

See Converter::$sort_page_contents_by_type

XMLDocBookpeardoc2Converter::$sourceloc

mixed = '' [line 186]

XMLDocBookpeardoc2Converter::$template_options

array = array('usepear' => false) [line 180]

template options. Currently only 1 recognized option usepear usepear tells the getLink() function to return a package link to PEAR and PEAR_ERROR

if possible, and to link directly to the fully-delimited link package#class.method orpackage#file.method in PEAR style, if possible, even if the package is not parsed. This willallow parsing of separate PEAR packages without parsing the entire thing at once!

XMLDocBookpeardoc2Converter::$_peardoc2_constants

array = false [line 105]

Constants, used for constants.tpl

XMLDocBookpeardoc2Converter::$_peardoc2_globals

array = false [line 111]

Global Variables, used for globals.tpl

XMLDocBookpeardoc2Converter::$_write_constants_xml

mixed = array() [line 184]

XMLDocBookpeardoc2Converter::$_write_globals_xml

mixed = array() [line 185]

Constructor function XMLDocBookpeardoc2Converter::XMLDocBookpeardoc2Converter(&$allp, &$packp,&$classes, &$procpages, $po, $pp, $qm, $targetDir, $templateDir, $title) [line 196]

sets $base_dir to $targetDir

Page 504 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 552: PhpDocumentor 1.2.2 Manual

See Converter::Converter()

function XMLDocBookpeardoc2Converter::addSummaryToPackageXml($template_output) [line 264] function XMLDocBookpeardoc2Converter::Br($input) [line 600] function XMLDocBookpeardoc2Converter::convertClass(&$element) [line 702]

Function Parameters:

parserClass &$element

Converts class for template output

Uses XMLDocBookpeardoc2Converter::flushPackageXml() - creates packagename.xml file whenall classes in a package have been converted

function XMLDocBookpeardoc2Converter::convertDefine(&$element) [line 919]Function Parameters:

parserDefine &$element

Converts defines for template output

See XMLDocBookpeardoc2Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function XMLDocBookpeardoc2Converter::ConvertErrorLog() [line 484]Create errors.html template file output

This method takes all parsing errors and warnings and spits them out ordered by file andline number.

Page 505 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 553: PhpDocumentor 1.2.2 Manual

Global Variable Used ErrorTracker $phpDocumentor_errors: We'll be using it's output facility

function XMLDocBookpeardoc2Converter::convertFunction(&$element) [line 847]Function Parameters:

parserFunction &$element

Converts function for template output - does nothing in peardoc2!

function XMLDocBookpeardoc2Converter::convertGlobal(&$element) [line 959]Function Parameters:

parserGlobal &$element

Converts global variables for template output

See XMLDocBookpeardoc2Converter::prepareDocBlock(), Converter::getFormattedConflicts()

function XMLDocBookpeardoc2Converter::convertInclude(&$element) [line 899]Function Parameters:

parserInclude &$element

Converts include elements for template output Completely ignored by this converter

function XMLDocBookpeardoc2Converter::convertMethod(&$element) [line 771]Function Parameters:

Page 506 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 554: PhpDocumentor 1.2.2 Manual

parserMethod &$element

Converts method for template output

See XMLDocBookpeardoc2Converter::prepareDocBlock(), parserMethod::getFunctionCall(),Converter::getFormattedDescMethods(), Converter::getFormattedOverrides()

function XMLDocBookpeardoc2Converter::convertPackagePage(&$element) [line 624]Function Parameters:

parserPackagePage &$element

Does nothing - use tutorials for DocBook

function XMLDocBookpeardoc2Converter::convertPage(&$element) [line 1009]Function Parameters:

parserData &$element

converts procedural pages for template output

See XMLDocBookpeardoc2Converter::prepareDocBlock(), Converter::getClassesOnPage()

function XMLDocBookpeardoc2Converter::convertTutorial(&$element) [line 632]Function Parameters:

parserTutorial &$element

Page 507 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 555: PhpDocumentor 1.2.2 Manual

Convert tutorials for output

function XMLDocBookpeardoc2Converter::convertVar(&$element) [line 664]Function Parameters:

parserVar &$element

Does nothing in this converter

function XMLDocBookpeardoc2Converter::endClass() [line 241]Writes out the template file of $class_data and unsets the template to save memory

TODO move class summary into an array to be written out at the end of parsing each package See Converter::endClass() See registerCurrentClass()

function XMLDocBookpeardoc2Converter::flushPackageXml($element) [line 272]Function Parameters:

parserClass|false $element is false if this is the end of all conversion

Usedby XMLDocBookpeardoc2Converter::convertClass() - creates packagename.xml file whenall classes in a package have been converted

function XMLDocBookpeardoc2Converter::formatIndex() [line 335]Does nothing

function XMLDocBookpeardoc2Converter::formatLeftIndex() [line 356]Creates package/lang/categoryname/packagename.xml for each package

Page 508 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 556: PhpDocumentor 1.2.2 Manual

function XMLDocBookpeardoc2Converter::formatPkgIndex() [line 328]Does nothing

function XMLDocBookpeardoc2Converter::generateChildClassList($class) [line 1071]Function Parameters:

parserClass $class class variable

returns a list of child classes

Uses parserClass::getChildClassList()

function XMLDocBookpeardoc2Converter::generateElementIndex() [line 1192]does nothing

array function XMLDocBookpeardoc2Converter::generateFormattedClassTree($class) [line 1034]Function Parameters:

parserClass $class class variable

returns an array containing the class inheritance tree from the root object to the class

Uses parserClass::getParentClassTree()

function XMLDocBookpeardoc2Converter::generateFormattedClassTrees($package) [line 1107]Function Parameters:

string $package package to generate a class tree for

Page 509 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 557: PhpDocumentor 1.2.2 Manual

returns a template-enabled array of class trees

See $roots, HTMLConverter::getRootTree()

function XMLDocBookpeardoc2Converter::generatePkgElementIndex($package) [line 1208]Function Parameters:

string $package name of a package

Generate alphabetical index of all elements by package and subpackage

See Converter::$pkg_elements, Converter::walk(),XMLDocBookpeardoc2Converter::generatePkgElementIndexes()

function XMLDocBookpeardoc2Converter::generatePkgElementIndexes() [line 1216]

See XMLDocBookpeardoc2Converter::generatePkgElementIndex()

function XMLDocBookpeardoc2Converter::getCData($value) [line 605]mixed function XMLDocBookpeardoc2Converter::getClassLink($expr, $package, [$file = false], [$text = false],[$local = true], [$with_a = true]) [line 1229]

Function Parameters:

string $expr name of class string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

Page 510 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 558: PhpDocumentor 1.2.2 Manual

See Converter::getClassLink()

mixed function XMLDocBookpeardoc2Converter::getDefineLink($expr, $package, [$file = false], [$text = false],[$local = true]) [line 1261]

Function Parameters:

string $expr name of define string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getDefineLink()

function XMLDocBookpeardoc2Converter::getExampleLink() [line 361]mixed function XMLDocBookpeardoc2Converter::getFunctionLink($expr, $package, [$file = false], [$text = false],[$local = true]) [line 1245]

Function Parameters:

string $expr name of function string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

Page 511 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 559: PhpDocumentor 1.2.2 Manual

See Converter::getFunctionLink()

mixed function XMLDocBookpeardoc2Converter::getGlobalLink($expr, $package, [$file = false], [$text = false],[$local = true]) [line 1277]

Function Parameters:

string $expr name of global variable string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getGlobalLink()

string function XMLDocBookpeardoc2Converter::getId(&$el, [$returnpackage = false]) [line 432]Function Parameters:

mixed &$el descendant of parserElement or parserData/parserPage boolean $returnpackage true to return the id for the package page

Get the id value needed to allow linking

See parserElement, parserData, parserPage

function XMLDocBookpeardoc2Converter::getLink($expr, [$package = false], [$packages = false]) [line 205]do that stuff in $template_options

Page 512 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 560: PhpDocumentor 1.2.2 Manual

mixed function XMLDocBookpeardoc2Converter::getMethodLink($expr, $class, $package, [$file = false], [$text =false], [$local = true]) [line 1310]

Function Parameters:

string $expr name of method string $class class containing method string $package package name string $file full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getMethodLink()

mixed function XMLDocBookpeardoc2Converter::getPageLink($expr, $package, [$path = false], [$text = false],[$local = true]) [line 1293]

Function Parameters:

string $expr name of procedural page string $package package name string $path full path to look in (used in index generation) boolean $text deprecated boolean $local return just the URL, or enclose it in an html a tag

See Converter::getPageLink()

function XMLDocBookpeardoc2Converter::getPageName(&$element) [line 1021]string function XMLDocBookpeardoc2Converter::getRootTree($tree, $package) [line 1126]

Function Parameters:

Page 513 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 561: PhpDocumentor 1.2.2 Manual

array $tree output from getSortedClassTreeFromClass()

return formatted class tree for the Class Trees page

See Classes::$definitechild, XMLDocBookpeardoc2Converter::generateFormattedClassTrees()

string function XMLDocBookpeardoc2Converter::getSourceAnchor($sourcefile, $anchor, [$text = ''], [$link = false])[line 595]

Function Parameters:

string $sourcefile full path to source file string $anchor name of anchor string $text link text, if this is a link boolean $link returns either a link or a destination based on this parameter

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a@filesource tag. NOTE: unused

function XMLDocBookpeardoc2Converter::getTutorialId($package, $subpackage, $tutorial, $id, $category) [line575]mixed function XMLDocBookpeardoc2Converter::getVarLink($expr, $class, $package, [$file = false], [$text = false],[$local = true]) [line 1327]

Function Parameters:

string $expr name of var string $class class containing var string $package package name string $file full path to look in (used in index generation) boolean $text deprecated

Page 514 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 562: PhpDocumentor 1.2.2 Manual

boolean $local return just the URL, or enclose it in an html a tag

See Converter::getVarLink()

function XMLDocBookpeardoc2Converter::makeLeft() [line 321] function XMLDocBookpeardoc2Converter::Output() [line 1389]

Generate the constants.xml, packagename.xml, and globals.xml files

function XMLDocBookpeardoc2Converter::postProcess($text) [line 545] function XMLDocBookpeardoc2Converter::prepareDocBlock(&$element, [$nopackage = true]) [line 550] function XMLDocBookpeardoc2Converter::ProgramExample($listing, [$tutorial = false], [$inlinesourceparse = null],[$class = null], [$linenum = null], [$filesourcepath = null]) [line 610]int function XMLDocBookpeardoc2Converter::rcNatCmp($a, $b) [line 1341]

Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array

int function XMLDocBookpeardoc2Converter::rcNatCmp1($a, $b) [line 1357]Function Parameters:

mixed $a mixed $b

does a nat case sort on the specified second level value of the array. this one puts constructors first

string function XMLDocBookpeardoc2Converter::returnLink($link, $text) [line 316]Function Parameters:

string $link

Page 515 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 563: PhpDocumentor 1.2.2 Manual

string $text

function XMLDocBookpeardoc2Converter::returnSee(&$element, [$eltext = false], [$local = true], [$with_a = true])[line 374]

Function Parameters:

abstractLink &$element a descendant of abstractlink should be passed, and never text string $eltext text to display in the link boolean $local this parameter is not used, and is deprecated boolean $with_a determines whether the returned text is enclosed in an <link> tag

This function takes an abstractLink descendant and returns an html link

function XMLDocBookpeardoc2Converter::setTemplateDir($dir) [line 1196] function XMLDocBookpeardoc2Converter::type_adjust($typename) [line 215] function XMLDocBookpeardoc2Converter::unmangle($s, $sourcecode) [line 210] function XMLDocBookpeardoc2Converter::wordwrap($string) [line 1381] function XMLDocBookpeardoc2Converter::writeNewPPage($key) [line 342]

Does nothing

function XMLDocBookpeardoc2Converter::writeSource() [line 349]Does nothing

Page 516 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 564: PhpDocumentor 1.2.2 Manual

Page 517 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 565: PhpDocumentor 1.2.2 Manual

Package Cpdf Procedural Elements

class.ezpdf.php

Package Cpdf

include_once 'phpDocumentor/Converters/PDF/default/class.pdf.php' [line 8]

Cpdf class

Page 518 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 566: PhpDocumentor 1.2.2 Manual

Package Cpdf Classes

Class Cezpdf [line 23]

This class will take the basic interaction facilities of the Cpdf class and make moreuseful functions so that the user does not have to know all the ins and outs of pdfpresentation to produce something pretty. IMPORTANT NOTE there is no warranty, implied or otherwise with this software.

Package Cpdf Author Wayne Munro, R&OS Ltd, http://www.ros.co.nz/pdf Version 009 (versioning is linked to class.pdf.php) released under a public domain licence.

Cezpdf::$ez

mixed = array('fontSize'=>10) [line 39]

Cezpdf::$ezPageCount

mixed = 0 [line 42]

Cezpdf::$ezPages

mixed = array() [line 41]

Cezpdf::$y

mixed = [line 40]

Constructor function Cezpdf::Cezpdf([$paper = 'a4'], [$orientation = 'portrait']) [line 46] function Cezpdf::alink($info, [$internal = 0]) [line 1491]

Page 519 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 567: PhpDocumentor 1.2.2 Manual

function Cezpdf::execTemplate($id, [$data = array()], [$options = array()]) [line 1478] function Cezpdf::ezColumnsStart([$options = array()]) [line 162] function Cezpdf::ezColumnsStop() [line 195] function Cezpdf::ezGetCurrentPageNumber() [line 284] function Cezpdf::ezImage($image, [$pad = 5], [$width = 0], [$resize = 'full'], [$just = 'center'], [$border = '']) [line1319] function Cezpdf::ezInsertMode([$status = 1], [$pageNum = 1], [$pos = 'before']) [line 205] function Cezpdf::ezNewPage() [line 222] function Cezpdf::ezOutput([$options = 0]) [line 479] function Cezpdf::ezProcessText($text) [line 1213] function Cezpdf::ezPRVTaddPageNumbers() [line 395] function Cezpdf::ezPRVTcleanUp() [line 466] function Cezpdf::ezPrvtGetTextWidth($size, $text) [line 609] function Cezpdf::ezPRVTpageNumberSearch($lbl, &$tmp) [line 378] function Cezpdf::ezPrvtTableColumnHeadings($cols, $pos, $maxWidth, $height, $decender, $gap, $size, &$y,[$optionsAll = array()]) [line 544] function Cezpdf::ezPrvtTableDrawLines($pos, $gap, $x0, $x1, $y0, $y1, $y2, $col, $inner, $outer, [$opt = 1]) [line515] function Cezpdf::ezSetCmMargins($top, $bottom, $left, $right) [line 152] function Cezpdf::ezSetDy($dy, [$mod = '']) [line 497] function Cezpdf::ezSetMargins($top, $bottom, $left, $right) [line 264] function Cezpdf::ezSetY($y) [line 486] function Cezpdf::ezStartPageNumbers($x, $y, $size, [$pos = 'left'], [$pattern = '{PAGENUM} of{TOTALPAGENUM}'], [$num = '']) [line 291] function Cezpdf::ezStopPageNumbers([$stopTotal = 0], [$next = 0], [$i = 0]) [line 349] function Cezpdf::ezStream([$options = '']) [line 472] function Cezpdf::ezTable(&$data, [$cols = ''], [$title = ''], [$options = '']) [line 625] function Cezpdf::ezText($text, [$size = 0], [$options = array()], [$test = 0]) [line 1223] function Cezpdf::ezWhatPageNumber($pageNum, [$i = 0]) [line 317] function Cezpdf::ilink($info) [line 1487] function Cezpdf::loadTemplate($templateFile) [line 1441] function Cezpdf::uline($info) [line 1534]

Class Cpdf [line 23]

Cpdf A PHP class to provide the basic functionality to create a pdf document without any

requirement for additional modules.

Note that they companion class CezPdf can be used to extend this class and dramatically simplify the creation of documents.

IMPORTANT NOTE there is no warranty, implied or otherwise with this software.

LICENCE This code has been placed in the Public Domain for all to enjoy.

Page 520 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 568: PhpDocumentor 1.2.2 Manual

Package Cpdf Link http://www.ros.co.nz/pdf Version 009 Author Wayne Munro < mailto:[email protected]>

Cpdf::$addLooseObjects

mixed = array() [line 111]

array contains infomation about how the loose objects are to be added to the document

Cpdf::$arc4

mixed = '' [line 156]

the ancryption array for the document encryption is stored here

Cpdf::$arc4_objnum

mixed = 0 [line 160]

the object Id of the encryption information

Cpdf::$callback

mixed = array() [line 176]

array which forms a stack to keep track of nested callback functions

Cpdf::$catalogId

mixed = [line 36]

the objectId (number within the objects array) of the document catalog

Cpdf::$checkpoint

mixed = '' [line 191]

store the stack for the transaction commands, each item in here is a record of thevalues of all the variables within the class, so that the user can rollback at will(from each 'start' command) note that this includes the objects array, so thesecan be large.

Page 521 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 569: PhpDocumentor 1.2.2 Manual

Cpdf::$currentBaseFont

mixed = '' [line 49]

the current base font

Cpdf::$currentColour

mixed = array('r'=>-1,'g'=>-1,'b'=>-1) [line 73]

current colour for fill operations, defaults to inactive value, all three componentsshould be between 0 and 1 inclusive when active

Cpdf::$currentContents

mixed = [line 65]

object number of the currently active contents block

Cpdf::$currentFont

mixed = '' [line 45]

a record of the current font

Cpdf::$currentFontNum

mixed = 0 [line 53]

the number of the current font within the font array

Cpdf::$currentLineStyle

mixed = '' [line 81]

current style that lines are drawn in

Cpdf::$currentNode

mixed = [line 57]

Cpdf::$currentPage

mixed = [line 61]

object number of the current page

Page 522 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 570: PhpDocumentor 1.2.2 Manual

Cpdf::$currentStrokeColour

mixed = array('r'=>-1,'g'=>-1,'b'=>-1) [line 77]

current colour for stroke operations (lines etc.)

Cpdf::$currentTextState

mixed = '' [line 148]

track if the current font is bolded or italicised

Cpdf::$destinations

mixed = array() [line 185]

store label->id pairs for named destinations, these will be used to replace internallinks done this way so that destinations can be defined after the location that links to them

Cpdf::$encrypted

mixed = 0 [line 168]

a flag to say if a document is to be encrypted or not

Cpdf::$encryptionKey

mixed = '' [line 172]

the ancryption key for the encryption of all the document content (structure is notencrypted)

Cpdf::$fileIdentifier

mixed = '' [line 164]

the file identifier, used to uniquely identify a pdf document

Cpdf::$firstPageId

mixed = [line 129]

the objectId of the first page of the document

Page 523 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 571: PhpDocumentor 1.2.2 Manual

Cpdf::$fontFamilies

mixed = array() [line 144]

store the information about the relationship between font families this used so that thecode knows which font is the bold version of another font, etc. the value of this array is initialised in the constuctor function.

Cpdf::$fonts

mixed = array() [line 41]

array carrying information about the fonts that the system currently knows about used to ensure that a font is not loaded twice, among other things

Cpdf::$infoObject

mixed = 0 [line 116]

the objectId of the information object for the document this contains authorship, titleetc.

Cpdf::$looseObjects

mixed = array() [line 107]

an array which contains information about the objects which are not firmly attached topages these have been added with the addObject function

Cpdf::$messages

mixed = '' [line 152]

messages are stored here during processing, these can be selected afterwards to givesome useful debug information

Cpdf::$nCallback

mixed = 0 [line 180]

the number of callback functions in the callback array

Page 524 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 572: PhpDocumentor 1.2.2 Manual

Cpdf::$nStack

mixed = 0 [line 102]

number of elements within the object Id storage stack

Cpdf::$nStateStack

mixed = 0 [line 90]

number of elements within the state stack

Cpdf::$numFonts

mixed = 0 [line 69]

number of fonts within the system

Cpdf::$numImages

mixed = 0 [line 120]

number of images being tracked within the document

Cpdf::$numObj

mixed = 0 [line 28]

the current number of pdf objects in the document

Cpdf::$numPages

mixed = 0 [line 94]

number of page objects within the document

Cpdf::$objects

mixed = array() [line 32]

this array contains all of the pdf objects, ready for final assembly

Cpdf::$options

mixed = array('compression'=>1) [line 125]

an array containing options about the document

Page 525 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 573: PhpDocumentor 1.2.2 Manual

it defaults to turning on the compression of the objects

Cpdf::$procsetObjectId

mixed = [line 138]

the object Id of the procset object

Cpdf::$stack

mixed = array() [line 98]

object Id storage stack

Cpdf::$stateStack

mixed = array() [line 86]

an array which is used to save the state of the document, mainly the colours and styles it is used to temporarily change to another state, the change back to what it was before

Cpdf::$wordSpaceAdjust

mixed = 0 [line 134]

used to track the last used value of the inter-word spacing, this is so that it is known when the spacing is changed.

Constructor function Cpdf::Cpdf([$pageSize = array(0,0,612,792)]) [line 197]class constructor

this will start a new document

Var array of 4 numbers, defining the bottom left and upper right corner of the page. first two arenormally zero.

function Cpdf::addDestination($label, $style, [$a = 0], [$b = 0], [$c = 0]) [line 2969]create a labelled destination within the document

Page 526 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 574: PhpDocumentor 1.2.2 Manual

function Cpdf::addImage(&$img, $x, $y, [$w = 0], [$h = 0], [$quality = 75]) [line 2870]add an image into the document, from a GD object

this function is not all that reliable, and I would probably encourage people to use the filebased functions

function Cpdf::addInfo($label, [$value = 0]) [line 2590]add content to the documents info object

function Cpdf::addInternalLink($label, $x0, $y0, $x1, $y1) [line 1173]add a link in the document to an internal destination (ie. within the document)

function Cpdf::addJpegFromFile($img, $x, $y, [$w = 0], [$h = 0]) [line 2825]add a JPEG image into the document, from a file

function Cpdf::addLink($url, $x0, $y0, $x1, $y1) [line 1164]add a link in the document to an external URL

function Cpdf::addMessage($message) [line 3022]used to add messages for use in debugging

function Cpdf::addObject($id, [$options = 'add']) [line 2544]after an object has been created, it wil only show if it has been added, using this

function.

function Cpdf::addPngFromFile($file, $x, $y, [$w = 0], [$h = 0]) [line 2637]add a PNG image into the document, from a file

this should work with remote files

function Cpdf::addText($x, $y, $size, $text, [$angle = 0], [$wordSpaceAdjust = 0]) [line 2156]add text to the document, at a specified location, size and angle on the page

function Cpdf::addTextWrap($x, $y, $width, $size, $text, [$justification = 'left'], [$angle = 0], [$test = 0]) [line 2331]add text to the page, but ensure that it fits within a certain width if it does not fit then

put in as much as possible, splitting at word boundaries and return the remainder. justification and angle can also be specified for the text

function Cpdf::ARC4($text) [line 1138]

Page 527 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 575: PhpDocumentor 1.2.2 Manual

ARC4 encrypt a text string

function Cpdf::ARC4_init([$key = '']) [line 1112]initialize the ARC4 encryption

function Cpdf::checkAllHere() [line 1214]should be used for internal checks, not implemented as yet

function Cpdf::closeObject() [line 2518]close an object

function Cpdf::curve($x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3) [line 1682]draw a bezier curve based on 4 control points

function Cpdf::ellipse($x0, $y0, $r1, [$r2 = 0], [$angle = 0], [$nSeg = 8], [$astart = 0], [$afinish = 360], [$close = 1],[$fill = 0]) [line 1713]

draw an ellipse note that the part and filled ellipse are just special cases of thisfunction draws an ellipse in the current line style centered at $x0,$y0, radii $r1,$r2 if $r2 is not

set, then a circle is drawn nSeg is not allowed to be less than 2, as this will simply draw a line(and will even draw a pretty crappy shape at 2, as we are approximating with bezier curves.

function Cpdf::encryptInit($id) [line 1098]initialize the encryption for processing a particular object

function Cpdf::filledEllipse($x0, $y0, $r1, [$r2 = 0], [$angle = 0], [$nSeg = 8], [$astart = 0], [$afinish = 360]) [line1699]

draw a filled ellipse

function Cpdf::filledRectangle($x1, $y1, $width, $height) [line 1835]a filled rectangle, note that it is the width and height of the rectangle which are the

secondary paramaters, not the coordinates of the upper-right corner

function Cpdf::getFirstPageId() [line 1639]function for the user to find out what the ID is of the first page that was created during

startup - useful if they wish to add something to it later.

function Cpdf::getFontDecender($size) [line 1943]

Page 528 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 576: PhpDocumentor 1.2.2 Manual

return the font decender, this will normally return a negative number if you add this number to the baseline, you get the level of the bottom of the font it is in

the pdf user units

function Cpdf::getFontHeight($size) [line 1929]return the height in units of the current font in the given size

function Cpdf::getTextWidth($size, $text) [line 2248]calculate how wide a given text string will be on a page, at a given size.

this can be called externally, but is alse used by the other class functions

function Cpdf::line($x1, $y1, $x2, $y2) [line 1675]draw a line from one set of coordinates to another

function Cpdf::md5_16($string) [line 1086]calculate the 16 byte version of the 128 bit md5 digest of the string

function Cpdf::newPage([$insert = 0], [$id = 0], [$pos = 'after']) [line 1851]add a new page to the document

this also makes the new page the current active object

function Cpdf::openHere($style, [$a = 0], [$b = 0], [$c = 0]) [line 2949]specify where the document should open when it first starts

function Cpdf::openObject() [line 2490]make a loose object, the output will go into this object, until it is closed, then will revert

to the current one. this object will not appear until it is included within a page. the function will return the

object number

function Cpdf::output([$debug = 0]) [line 1220]return the pdf stream as a string returned from the function

function Cpdf::o_action($id, $action, [$options = '']) [line 726]an action object, used to link to URLS initially

function Cpdf::o_annotation($id, $action, [$options = '']) [line 769]

Page 529 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 577: PhpDocumentor 1.2.2 Manual

an annotation object, this will add an annotation to the current page. initially will support just link annotations

function Cpdf::o_catalog($id, $action, [$options = '']) [line 297]define the document catalog, the overall controller for the document

function Cpdf::o_contents($id, $action, [$options = '']) [line 890]the contents objects hold all of the content which appears on pages

function Cpdf::o_destination($id, $action, [$options = '']) [line 224]destination object, used to specify the location for the user to jump to, presently on

opening

function Cpdf::o_encryption($id, $action, [$options = '']) [line 1015]encryption object.

function Cpdf::o_font($id, $action, [$options = '']) [line 475]an object to hold the font description

function Cpdf::o_fontDescriptor($id, $action, [$options = '']) [line 559]a font descriptor, needed for including additional fonts

function Cpdf::o_fontEncoding($id, $action, [$options = '']) [line 610]the font encoding

function Cpdf::o_image($id, $action, [$options = '']) [line 940]an image object, will be an XObject in the document, includes description and data

function Cpdf::o_info($id, $action, [$options = '']) [line 682]define the document information

function Cpdf::o_outlines($id, $action, [$options = '']) [line 445]define the outlines in the doc, empty for now

function Cpdf::o_page($id, $action, [$options = '']) [line 821]a page object, it also creates a contents object to hold its contents

function Cpdf::o_pages($id, $action, [$options = '']) [line 347]

Page 530 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 578: PhpDocumentor 1.2.2 Manual

object which is a parent to the pages in the document

function Cpdf::o_procset($id, $action, [$options = '']) [line 647]the document procset, solves some problems with printing to old PS printers

function Cpdf::o_viewerPreferences($id, $action, [$options = '']) [line 259]set the viewer preferences

function Cpdf::partEllipse($x0, $y0, $astart, $afinish, $r1, [$r2 = 0], [$angle = 0], [$nSeg = 8]) [line 1692]draw a part of an ellipse

function Cpdf::polygon($p, $np, [$f = 0]) [line 1818]draw a polygon, the syntax for this is similar to the GD polygon command

function Cpdf::rectangle($x1, $y1, $width, $height) [line 1843]draw a rectangle, note that it is the width and height of the rectangle which are the

secondary paramaters, not the coordinates of the upper-right corner

function Cpdf::reopenObject($id) [line 2505]open an existing object for editing

function Cpdf::restoreState([$pageEnd = 0]) [line 2471]restore a previously saved state

function Cpdf::saveState([$pageEnd = 0]) [line 2447]this will be called at a new page to return the state to what it was on the

end of the previous page, before the stack was closed down This is to get around notbeing able to have open 'q' across pages

function Cpdf::selectFont($fontName, [$encoding = ''], [$set = 1]) [line 1417]if the font is not loaded then load it and make the required object

else just make it the current font the encoding array can contain 'encoding'=>'none','WinAnsiEncoding','MacRomanEncoding' or 'MacExpertEncoding' note thatencoding='none' will need to be used for symbolic fonts and 'differences' => an array ofmappings between numbers 0->255 and character names.

function Cpdf::setColor($r, $g, $b, [$force = 0]) [line 1655]

Page 531 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 579: PhpDocumentor 1.2.2 Manual

sets the colour for fill operations

function Cpdf::setEncryption([$userPass = ''], [$ownerPass = ''], [$pc = array()]) [line 1184]set the encryption of the document can be used to turn it on and/or set the passwords

which it will have. also the functions that the user will have are set here, such as print, modify, add

function Cpdf::setFontFamily($family, [$options = '']) [line 2985]define font families, this is used to initialize the font families for the default fonts and

for the user to add new ones for their fonts. The default bahavious can beoverridden should that be desired.

function Cpdf::setLineStyle([$width = 1], [$cap = ''], [$join = ''], [$dash = ''], [$phase = 0]) [line 1789]this sets the line drawing style.

width, is the thickness of the line in user units cap is the type of cap to put on the line,values can be 'butt','round','square' where the diffference between 'square' and 'butt' is that'square' projects a flat end past the end of the line. join can be 'miter', 'round', 'bevel' dashis an array which sets the dash pattern, is a series of length values, which are the lengths ofthe on and off dashes. (2) represents 2 on, 2 off, 2 on , 2 off ... (2,1) is 2 on, 1 off, 2 on,1 off.. etc phase is a modifier on the dash pattern which is used to shift the point at which thepattern starts.

function Cpdf::setPreferences($label, [$value = 0]) [line 2607]set the viewer preferences of the document, it is up to the browser to obey these.

function Cpdf::setStrokeColor($r, $g, $b, [$force = 0]) [line 1665]sets the colour for stroke operations

function Cpdf::stopObject($id) [line 2533]stop an object from appearing on pages from this point on

function Cpdf::stream([$options = '']) [line 1899]output the pdf code, streaming it to the browser

the relevant headers are set so that hopefully the browser will recognise it

function Cpdf::transaction($action) [line 3029]a few functions which should allow the document to be treated transactionally.

Page 532 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 580: PhpDocumentor 1.2.2 Manual

Page 533 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 581: PhpDocumentor 1.2.2 Manual

Package HTML_TreeMenu ProceduralElements

file_dialog.phpAdvanced Web Interface to phpDocumentor

Package HTML_TreeMenu Filesource Source Code for this file See phpdoc.php

include_once "$root_dir/docbuilder/includes/utilities.php" [line 110]

include_once "$root_dir/HTML_TreeMenu-1.1.2/TreeMenu.php" [line 83]

include_once "$root_dir/phpDocumentor/common.inc.php" [line 42]

common file information

Page 534 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 582: PhpDocumentor 1.2.2 Manual

new_phpdoc.phpAdvanced Web Interface to phpDocumentor

Package HTML_TreeMenu Filesource Source Code for this file Deprecated in favor of docbuilder (see docbuilder/config.php) See phpdoc.php

function getDir($path, &$node) [line 102]include "phpDocumentor/phpdoc.inc" [line 400]

phpdoc.inc

include_once 'HTML_TreeMenu-1.1.2/TreeMenu.php' [line 76]

include_once "phpDocumentor/common.inc.php" [line 54]

common file information

function recurseDir($path, &$node) [line 125] function switchDirTree($path, &$node) [line 154] function vdump_par($tree) [line 234]

Page 535 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 583: PhpDocumentor 1.2.2 Manual

Package HTML_TreeMenu Classes

Class DirNode [line 91]

Directory Node

Package HTML_TreeMenu Author Harald Radi < mailto:[email protected]> Author Richard Heyes < mailto:[email protected]>

DirNode::$path

string = [line 97]

full path to this node

Constructor function DirNode::DirNode([$text = false], [$link = false], [$icon = false], $path, [$events = array()])[line 99]

Class HTML_TreeMenu [line 67]

HTML_TreeMenu Class A simple couple of PHP classes and some not so simple Jabbascript which produces a

tree menu. In IE this menu is dynamic, with branches being collapsable. In IE5+ the status ofthe collapsed/open branches persists across page refreshes.In any other browser the tree is

Page 536 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 584: PhpDocumentor 1.2.2 Manual

static. Code is based on work of Harald Radi.

Usage.

After installing the package, copy the example php script to your servers document root. Alsoplace the TreeMenu.js and the images folder in the same place. Running the script should then produce the tree.

Thanks go to Chip Chapin (http://www.chipchapin.com) for many excellent ideas andimprovements.

Package HTML_TreeMenu Access public Author Harald Radi < mailto:[email protected]> Author Richard Heyes < mailto:[email protected]>

HTML_TreeMenu::$items

array = [line 73]

Indexed array of subnodes

Constructor function HTML_TreeMenu::HTML_TreeMenu() [line 80]Constructor

Access public

object Returns function HTML_TreeMenu::addItem(&$node) [line 94]Function Parameters:

object $node The node to add. This object should be a HTML_TreeNode object.

Page 537 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 585: PhpDocumentor 1.2.2 Manual

This function adds an item to the the tree.

Access public

Class HTML_TreeMenu_DHTML [line 329]

HTML_TreeMenu_DHTML class This class is a presentation class for the tree structure created using the

TreeMenu/TreeNode. It presents the traditional tree, static for browsers that can't handle theDHTML.

Package HTML_TreeMenu

HTML_TreeMenu_DHTML::$defaultClass

mixed = [line 359]

The default CSS class for the nodes

HTML_TreeMenu_DHTML::$images

string = [line 342]

Path to the images

HTML_TreeMenu_DHTML::$isDynamic

mixed = [line 336]

Dynamic status of the treemenu. If true (default) this has no effect. If false it willoverride all dynamic status vars and set the menu to be fully expanded an non-

Page 538 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 586: PhpDocumentor 1.2.2 Manual

dynamic.

HTML_TreeMenu_DHTML::$linkTarget

string = [line 348]

Target for the links generated

HTML_TreeMenu_DHTML::$noTopLevelImages

bool = [line 365]

Whether to skip first level branch images

HTML_TreeMenu_DHTML::$userPersistence

bool = [line 354]

Whether to use clientside persistence or not

Constructor function HTML_TreeMenu_DHTML::HTML_TreeMenu_DHTML(&$structure, [$options = array()],[$isDynamic = true]) [line 386]

Function Parameters:

object $structure The menu structure array $options Array of options bool $isDynamic Whether the tree is dynamic or not

Constructor, takes the tree structure as an argument and an array of options which can consist of:

images - The path to the images folder. Defaults to "images"linkTarget - The target for the link. Defaults to "_self"defaultClass - The default CSS class to apply to a node. Default is none.usePersistence - Whether to use clientside persistence. This persistence is achieved using cookies. Default is true.noTopLevelImages - Whether to skip displaying the first level of images if there is multiple top level branches. And also a boolean for whether the entire tree is dynamic or not. This overrides any

perNode dynamic settings.

string function HTML_TreeMenu_DHTML::toHTML() [line 411]Returns the HTML for the menu. This method can be used instead of printMenu() to

Page 539 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 587: PhpDocumentor 1.2.2 Manual

use the menu system with a template system.

Access public

Class HTML_TreeMenu_Listbox [line 493]

HTML_TreeMenu_Listbox class This class presents the menu as a listbox

Package HTML_TreeMenu

HTML_TreeMenu_Listbox::$indentChar

string = [line 505]

The character used for indentation

HTML_TreeMenu_Listbox::$indentNum

integer = [line 512]

How many of the indent chars to use per indentation level

HTML_TreeMenu_Listbox::$linkTarget

string = [line 518]

Target for the links generated

Page 540 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 588: PhpDocumentor 1.2.2 Manual

HTML_TreeMenu_Listbox::$promoText

string = [line 499]

The text that is displayed in the first option

Constructor function HTML_TreeMenu_Listbox::HTML_TreeMenu_Listbox($structure, [$options = array()]) [line535]

Function Parameters:

object $structure The menu structure array $options Options whic affect the display of the listbox. These can consistof:

promoText The text that appears at the the top of the listbox Defaults to "Select..."indentChar The character to use for indenting the nodes Defaults to "&nbsp;"indentNum How many of the indentChars to use per indentation level Defaults to 2linkTarget Target for the links. Defaults to "_self"submitText Text for the submit button. Defaults to "Go"

Constructor

function HTML_TreeMenu_Listbox::toHTML() [line 552]Returns the HTML generated

Class HTML_TreeMenu_Presentation [line 282]

HTML_TreeMenu_Presentation class Base class for other presentation classes to inherit from.

Package HTML_TreeMenu

Page 541 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 589: PhpDocumentor 1.2.2 Manual

HTML_TreeMenu_Presentation::$menu

object = [line 288]

The TreeMenu structure

Constructor function HTML_TreeMenu_Presentation::HTML_TreeMenu_Presentation(&$structure) [line 295]Function Parameters:

object $structure The menu structure

Base constructor simply sets the menu object

function HTML_TreeMenu_Presentation::printMenu([$options = array()]) [line 310]Function Parameters:

array $options Options to set. Any options taken by the presentation class can bespecified here.

Prints the HTML generated by the toHTML() method. toHTML() must therefore be defined by the derived class.

Access public

Class HTML_TreeNode [line 113]

HTML_TreeNode class This class is supplementary to the above and provides a way to add nodes to the tree. A

node can have other nodes added to it.

Page 542 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 590: PhpDocumentor 1.2.2 Manual

Package HTML_TreeMenu Access public Author Harald Radi < mailto:[email protected]> Author Richard Heyes < mailto:[email protected]>

HTML_TreeNode::$cssClass

string = [line 137]

The css class for this node

HTML_TreeNode::$ensureVisible

bool = [line 161]

Should this node be made visible?

HTML_TreeNode::$events

array = [line 173]

Javascript event handlers;

HTML_TreeNode::$expanded

bool = [line 149]

Whether this node is expanded or not

HTML_TreeNode::$icon

string = [line 131]

The icon for this node.

HTML_TreeNode::$isDynamic

bool = [line 155]

Page 543 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 591: PhpDocumentor 1.2.2 Manual

Whether this node is dynamic or not

HTML_TreeNode::$items

array = [line 143]

Indexed array of subnodes

HTML_TreeNode::$link

string = [line 125]

The link for this node.

HTML_TreeNode::$parent

object = [line 167]

The parent node. Null if top level

HTML_TreeNode::$text

string = [line 119]

The text for this node.

Constructor function HTML_TreeNode::HTML_TreeNode([$options = array()], [$events = array()]) [line 197]Function Parameters:

array $options An array of options which you can pass to change the way thisnode looks/acts. This can consist of:

text The title of the node, defaults to blanklink The link for the node, defaults to blankicon The icon for the node, defaults to blankclass The CSS class for this node, defaults to blankexpanded The default expanded status of this node, defaults to false This doesn't affect non dynamic presentation typesisDynamic If this node is dynamic or not. Only affects certain presentation types.ensureVisible If true this node will be made visible despite the expanded settings, and client side persistence. Will not affect some presentation styles, such as Listbox. Default is false

array $events An array of javascript events and the corresponding event handlers. Additionally to the standard javascript events you can specify handlers for the'onexpand', 'oncollapse' and 'ontoggle' events which will be fired whenever a

Page 544 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 592: PhpDocumentor 1.2.2 Manual

node is collapsed and/or expanded.

Constructor

Access public

function HTML_TreeNode::addItem(&$node) [line 242]Function Parameters:

object $node The new node

Adds a new subnode to this node.

Access public

function HTML_TreeNode::setOption($option, $value) [line 231]Function Parameters:

string $option Option to set string $value Value to set the option to

Allows setting of various parameters after the initial constructor call. Possible options you can set are:

textlinkiconcssClassexpandedisDynamicensureVisible ie The same options as in the constructor

Page 545 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 593: PhpDocumentor 1.2.2 Manual

Access public

Page 546 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 594: PhpDocumentor 1.2.2 Manual

Page 547 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 595: PhpDocumentor 1.2.2 Manual

Package Smarty Procedural Elements

Config_File.class.phpConfig_File class.

This library is free software; you can redistribute it and/or modify it under the terms of theGNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULARPURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with thislibrary; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,Boston, MA 02111-1307 USA

You may contact the author of Config_File by e-mail at: [email protected]

Or, write to: Andrei Zmievski Software Engineer, ispi 237 S. 70th suite 220 Lincoln, NE68510

The latest version of Config_File can be obtained from: http://smarty.php.net/

Package Smarty Access public Author Andrei Zmievski < mailto:[email protected]> Copyright Copyright: 2001,2002 ispi of Lincoln, Inc. Version 2.5.0 Link http://smarty.php.net/

Page 548 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 596: PhpDocumentor 1.2.2 Manual

Smarty.class.phpProject: Smarty: the PHP compiling template engine File: Smarty.class.php

This library is free software; you can redistribute it and/or modify it under the terms of theGNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULARPURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with thislibrary; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,Boston, MA 02111-1307 USA

For questions, help, comments, discussion, etc., please join the Smarty mailing list. Send ablank e-mail to [email protected]

You may contact the authors of Smarty by e-mail at: [email protected] [email protected]

Or, write to: Monte Ohrt Director of Technology, ispi 237 S. 70th suite 220 Lincoln, NE68510

The latest version of Smarty can be obtained from: http://smarty.php.net/

Package Smarty Version 2.5.0 Author Andrei Zmievski < mailto:[email protected]> Author Monte Ohrt < mailto:[email protected]> Copyright 2001,2002 ispi of Lincoln, Inc. Link http://smarty.php.net/

DIR_SEP = DIRECTORY_SEPARATOR [line 52]set SMARTY_DIR to absolute path to Smarty library files.

if not defined, include_path will be used.

SMARTY_DIR = dirname(__FILE__).DIR_SEP [line 58]

Page 549 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 597: PhpDocumentor 1.2.2 Manual

Sets SMARTY_DIR only if user application has not already defined it

SMARTY_PHP_ALLOW = 3 [line 64]SMARTY_PHP_PASSTHRU = [line 61]SMARTY_PHP_QUOTE = 1 [line 62]SMARTY_PHP_REMOVE = 2 [line 63]

Page 550 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 598: PhpDocumentor 1.2.2 Manual

Smarty_Compiler.class.phpProject: Smarty: the PHP compiling template engine File:

Smarty_Compiler.class.php This library is free software; you can redistribute it and/or modify it under the terms of the

GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULARPURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with thislibrary; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,Boston, MA 02111-1307 USA

You may contact the authors of Smarty by e-mail at: [email protected] [email protected]

Or, write to: Monte Ohrt Director of Technology, ispi 237 S. 70th suite 220 Lincoln, NE68510

The latest version of Smarty can be obtained from: http://smarty.php.net/

Package Smarty Copyright 2001,2002 ispi of Lincoln, Inc. Version 2.5.0 Author Andrei Zmievski < mailto:[email protected]> Author Monte Ohrt < mailto:[email protected]> Link http://smarty.php.net/

Page 551 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 599: PhpDocumentor 1.2.2 Manual

Package Smarty Classes

Class Config_File [line 45]

Config file reading class

Package Smarty

Config_File::$booleanize

mixed = true [line 59]

Controls whether config values of on/true/yes and off/false/no get converted toboolean values automatically. Options

Config_File::$fix_newlines

mixed = true [line 70]

Controls whether or not to fix mac or dos formatted newlines. Options If set to true, \r or \r\n will be changed to \n.

Config_File::$overwrite

mixed = true [line 53]

Controls whether variables with the same name overwrite each other.

Page 552 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 600: PhpDocumentor 1.2.2 Manual

Options

Config_File::$read_hidden

mixed = true [line 64]

Controls whether hidden config sections/vars are read from the file. Options

Config_File::$_config_data

mixed = array() [line 75]

Config_File::$_separator

mixed = "" [line 76]

Constructor function Config_File::Config_File([$config_path = NULL]) [line 84]Function Parameters:

string $config_path (optional) path to the config files

Constructs a new config file class.

function Config_File::clear([$file_name = NULL]) [line 227]Function Parameters:

string $file_name file to clear config data for

Clear loaded config data for a certain file or all files.

string|array function Config_File::get($file_name, [$section_name = NULL], [$var_name = NULL]) [line 122]Function Parameters:

string $file_name config file to get info for string $section_name (optional) section to get info for string $var_name (optional) variable to get info for

Page 553 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 601: PhpDocumentor 1.2.2 Manual

Retrieves config info based on the file, section, and variable name.

Usedby Config_File::get_key() - retrieves information from config file and returns it

array function Config_File::get_file_names() [line 174]Get all loaded config file names.

string|array function Config_File::get_key($config_key) [line 162]Function Parameters:

$file_name $config_key string config key (filename/section/var)

Retrieves config info based on the key.

Uses Config_File::get() - retrieves information from config file and returns it

array function Config_File::get_section_names($file_name) [line 186]Function Parameters:

string $file_name config file to get section names from

Get all section names from a loaded file.

array function Config_File::get_var_names($file_name, [$section = NULL], $section_name) [line 205]Function Parameters:

string $file_name config file to get info for string $section_name (optional) section to get info for

Page 554 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 602: PhpDocumentor 1.2.2 Manual

Get all global or section variable names.

function Config_File::load_file($file_name, [$prepend_path = true]) [line 243]Function Parameters:

string $file_name file name to load boolean $prepend_path whether current config path should be prepended tothe filename

Load a configuration file manually.

function Config_File::set_path($config_path) [line 101]Function Parameters:

string $config_path path to the config files

Set the path where configuration files can be found.

function Config_File::_parse_config_block($config_block) [line 292] function Config_File::_set_config_var(&$container, $var_name, $var_value, $booleanize) [line 324]

Function Parameters:

array &$container string $var_name mixed $var_value boolean $booleanize determines whether $var_value is converted to totrue/false

function Config_File::_trigger_error_msg($error_msg, [$error_type = E_USER_WARNING]) [line 358]Function Parameters:

string $error_msg integer $error_type one of

Page 555 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 603: PhpDocumentor 1.2.2 Manual

Uses trigger_error() - creates a PHP warning/error

Class Smarty [line 69]

Package Smarty

Smarty::$autoload_filters

array = array() [line 329]

This indicates which filters are automatically loaded into Smarty. Smarty Configuration Section

Var array of filter names

Smarty::$cache_dir

string = 'cache' [line 165]

The name of the directory for cache files. Smarty Configuration Section

Smarty::$cache_handler_func

null|string = null [line 305]

The function used for cache file handling. If not set, built-in caching is used.

Page 556 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 604: PhpDocumentor 1.2.2 Manual

Smarty Configuration Section

Var function name

Smarty::$cache_lifetime

integer = 3600 [line 176]

This is the number of seconds cached content will persist. Smarty Configuration Section

0 = always regenerate cache-1 = never expires

Smarty::$cache_modified_check

boolean = false [line 186]

Only used when $caching is enabled. If true, then If-Modified-Since headers arerespected with cached content, and appropriate HTTP headers are sent. Smarty Configuration Section This way repeated hits to a cached page do not send the

entire page to the client every time.

Smarty::$caching

integer = 0 [line 158]

This enables template caching. Smarty Configuration Section

0 = no caching1 = use class cache_lifetime value2 = use cache_lifetime in cache file

Smarty::$compiler_class

string = 'Smarty_Compiler' [line 383]

The class used for compiling templates.

Page 557 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 605: PhpDocumentor 1.2.2 Manual

Smarty::$compiler_file

string = 'Smarty_Compiler.class.php' [line 376]

The file that contains the compiler class. This can a full pathname, or relative to thephp_include path.

Smarty::$compile_check

boolean = true [line 139]

This tells Smarty whether to check for recompiling or not. Recompiling does not needto happen unless a template or config file is changed. Smarty Configuration Section Typically you enable this during development, and disable

for production.

Smarty::$compile_dir

string = 'templates_c' [line 87]

The directory where compiled templates are located. Smarty Configuration Section

Smarty::$compile_id

string = null [line 279]

Set this if you want different sets of compiled files for the same templates. This isuseful for things like different languages. Smarty Configuration Section Instead of creating separate sets of templates per

language, you set different compile_ids like 'en' and 'de'.

Smarty::$config_booleanize

mixed = true [line 345]

This tells whether or not to automatically booleanize config file variables. If enabled, then the strings "on", "true", and "yes" are

treated as boolean true, and "off", "false" and "no" aretreated as boolean false.

Page 558 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 606: PhpDocumentor 1.2.2 Manual

Smarty::$config_class

string = 'Config_File' [line 390]

The class used to load config vars.

Smarty::$config_dir

string = 'configs' [line 94]

The directory where config files are located. Smarty Configuration Section

Smarty::$config_fix_newlines

mixed = true [line 359]

This tells whether or not automatically fix newlines in config files. It basically converts \r (mac) or \r\n (dos) to \n

Smarty::$config_overwrite

mixed = true [line 338]

This tells if config file vars of the same name overwrite each other or not. if disabled, same name variables are accumulated in an array.

Smarty::$config_read_hidden

mixed = false [line 353]

This tells whether hidden sections [.foobar] are readable from the tempalates or not.Normally you would never allow this since that is the point behind hiddensections: the application can access them, but the templates cannot.

Smarty::$debugging

boolean = false [line 110]

If debugging is enabled, a debug console window will display when the page loads(make sure your browser allows unrequested popup windows) Smarty Configuration Section

Page 559 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 607: PhpDocumentor 1.2.2 Manual

Smarty::$debugging_ctrl

string = 'NONE' [line 129]

This determines if debugging is enable-able from the browser. Smarty Configuration Section

NONE => no debugging control allowedURL => enable debugging when SMARTY_DEBUG is found in the URL.

Link http://www.foo.dom/index.php?SMARTY_DEBUG

Smarty::$debug_tpl

string = '' [line 118]

This is the path to the debug console template. If not set, the default one will be used. Smarty Configuration Section

Usedby Smarty::_generate_debug_output() - debug template, used to display debugging output

Smarty::$default_modifiers

array = array() [line 298]

This is a list of the modifiers to apply to all template variables. Smarty Configuration Section Put each modifier in a separate array element in the order

you want them applied. example: 1 array('escape:"htmlall"' );

Smarty::$default_template_handler_func

string = '' [line 368]

If a template cannot be found, this PHP function will be executed. Useful for creating templates on-the-fly or other special action.

Page 560 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 608: PhpDocumentor 1.2.2 Manual

Var function name

Smarty::$force_compile

boolean = false [line 147]

This forces templates to compile every time. Useful for development or debugging. Smarty Configuration Section

Smarty::$global_assign

array = array('HTTP_SERVER_VARS' => array('SCRIPT_NAME')) [line 315]

These are the variables from the globals array that are assigned to all templatesautomatically. This isn't really necessary any more, you can use the $smarty varto access them directly. Smarty Configuration Section

Usedby Smarty::Smarty() - uses assign() to assign each corresponding value from $GLOBALS to the template vars

Smarty::$left_delimiter

string = '{' [line 253]

The left delimiter used for the template tags. Smarty Configuration Section

Smarty::$php_handling

integer = SMARTY_PHP_PASSTHRU [line 200]

This determines how Smarty handles "<?php ... ?>" tags in templates.

Page 561 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 609: PhpDocumentor 1.2.2 Manual

Smarty Configuration Section possible values: SMARTY_PHP_PASSTHRU -> print tags as plain textSMARTY_PHP_QUOTE -> escape tags as entitiesSMARTY_PHP_REMOVE -> remove php tagsSMARTY_PHP_ALLOW -> execute php tags

Smarty::$plugins_dir

array = array('plugins') [line 101]

An array of directories searched for plugins. Smarty Configuration Section

Smarty::$request_vars_order

string = "EGPCS" [line 269]

The order in which request variables are registered, similar to variables_order inphp.ini E = Environment, G = GET, P = POST, C = Cookies, S = Server Smarty Configuration Section

Smarty::$right_delimiter

string = '}' [line 260]

The right delimiter used for the template tags. Smarty Configuration Section

Smarty::$secure_dir

array = array() [line 219]

This is the list of template directories that are considered secure. This is used only if$security is enabled. One directory per array element. $template_dir is in this listimplicitly. Smarty Configuration Section

Smarty::$security

boolean = false [line 210]

Page 562 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 610: PhpDocumentor 1.2.2 Manual

This enables template security. When enabled, many things are restricted Smarty Configuration Section in the templates that normally would go unchecked. This is

useful when untrusted parties are editing templates and you want a reasonable level ofsecurity. (no direct execution of PHP in templates for example)

Smarty::$security_settings

array = array( 'PHP_HANDLING' => false, 'IF_FUNCS' => array('array', 'list', 'isset', 'empty', 'count', 'sizeof', 'in_array', 'is_array', 'true','false'),'INCLUDE_ANY'=>false,'PHP_TAGS'=>false,'MODIFIER_FUNCS'=>array('count'),'ALLOW_CONSTANTS'=>false) [line 227]

These are the security settings for Smarty. They are used only when $security isenabled. Smarty Configuration Section

Smarty::$template_dir

string = 'templates' [line 80]

The name of the directory where templates are located. Smarty Configuration Section

Smarty::$trusted_dir

array = array() [line 246]

This is an array of directories where trusted php scripts reside. Smarty Configuration Section $security is disabled during their inclusion/execution.

Smarty::$undefined

null = null [line 322]

The value of "undefined". Leave it alone :-) Smarty Configuration Section

Smarty::$use_sub_dirs

Page 563 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 611: PhpDocumentor 1.2.2 Manual

boolean = false [line 289]

This tells Smarty whether or not to use sub dirs in the cache/ and templates_c/directories. sub directories better organized, but may not work well with PHP safemode enabled. Smarty Configuration Section

Constructor function Smarty::Smarty() [line 546]The class constructor.

Uses Smarty::$global_assign - uses assign() to assign each corresponding value from $GLOBALS to the template vars

function Smarty::append($tpl_var, [$value = null], [$merge = false]) [line 606]Function Parameters:

array|string $tpl_var the template variable name(s) mixed $value the value to append

appends values to template variables

function Smarty::append_by_ref($tpl_var, &$value, [$merge = false]) [line 646]Function Parameters:

string $tpl_var the template variable name mixed $value the referenced value to append

appends values to template variables by reference

function Smarty::assign($tpl_var, [$value = null]) [line 574]Function Parameters:

array|string $tpl_var the template variable name(s)

Page 564 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 612: PhpDocumentor 1.2.2 Manual

mixed $value the value to assign

assigns values to template variables

function Smarty::assign_by_ref($tpl_var, &$value) [line 594]Function Parameters:

string $tpl_var the template variable name mixed $value the referenced value to assign

assigns values to template variables by reference

function Smarty::clear_all_assign() [line 976]clear all the assigned template variables.

boolean function Smarty::clear_all_cache([$exp_time = null]) [line 941]Function Parameters:

string $exp_time expire time

clear the entire contents of cache (all templates)

function Smarty::clear_assign($tpl_var) [line 668]Function Parameters:

string $tpl_var the template variable to clear

clear the given assigned template variable.

boolean function Smarty::clear_cache([$tpl_file = null], [$cache_id = null], [$compile_id = null], [$exp_time = null])[line 914]

Function Parameters:

string $tpl_file name of template file

Page 565 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 613: PhpDocumentor 1.2.2 Manual

string $cache_id name of cache_id string $compile_id name of compile_id string $exp_time expiration time

clear cached content for the given template and cache id

boolean function Smarty::clear_compiled_tpl([$tpl_file = null], [$compile_id = null], [$exp_time = null]) [line 991]Function Parameters:

string $tpl_file string $compile_id string $exp_time

clears compiled version of specified template resource, or all compiled template filesif one is not specified. This function is for advanced use only, not normally needed.

function Smarty::config_load($file, [$section = null], [$scope = 'global']) [line 1288]Function Parameters:

string $file string $section string $scope

load configuration values

function Smarty::display($tpl_file, [$cache_id = null], [$compile_id = null]) [line 1061]Function Parameters:

string $tpl_file string $cache_id

Page 566 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 614: PhpDocumentor 1.2.2 Manual

string $compile_id

executes & displays the template results

function Smarty::fetch($tpl_file, [$cache_id = null], [$compile_id = null], [$display = false]) [line 1074]Function Parameters:

string $tpl_file string $cache_id string $compile_id boolean $display

executes & returns or displays the template results

array function Smarty::get_config_vars([$name = null], $type) [line 1033]Function Parameters:

string $name string $type

Returns an array containing config variables

object function Smarty::get_registered_object($name) [line 1300]Function Parameters:

string $name

return a reference to a registered object

array function Smarty::get_template_vars([$name = null], $type) [line 1016]Function Parameters:

string $name

Page 567 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 615: PhpDocumentor 1.2.2 Manual

string $type

Returns an array containing template variables

string|false function Smarty::is_cached($tpl_file, [$cache_id = null], [$compile_id = null]) [line 960]Function Parameters:

string $tpl_file name of template file string $cache_id string $compile_id

test to see if valid cache exists for this template

function Smarty::load_filter($type, $name) [line 890]Function Parameters:

string $type filter type string $name filter name

load a filter of specified type and name

function Smarty::register_block($block, $block_impl) [line 733]Function Parameters:

string $block name of template block string $block_impl PHP function to register

Registers block function to be used in templates

function Smarty::register_compiler_function($function, $function_impl) [line 755]Function Parameters:

Page 568 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 616: PhpDocumentor 1.2.2 Manual

string $function name of template function string $function_impl name of PHP function to register

Registers compiler function

function Smarty::register_function($function, $function_impl) [line 684]Function Parameters:

string $function the name of the template function string $function_impl the name of the PHP function to register

Registers custom function to be used in templates

function Smarty::register_modifier($modifier, $modifier_impl) [line 777]Function Parameters:

string $modifier name of template modifier string $modifier_impl name of PHP function to register

Registers modifier to be used in templates

function Smarty::register_object($object, &$object_impl, [$allowed = array()], [$smarty_args = true]) [line 708]Function Parameters:

string $object name of template object object &$object_impl the referenced PHP object to register null|array $allowed list of allowed methods (empty = all) boolean $smarty_args smarty argument format, else traditional

Registers object to be used in templates

function Smarty::register_outputfilter($function) [line 867]

Page 569 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 617: PhpDocumentor 1.2.2 Manual

Function Parameters:

string $function name of PHP function

Registers an output filter function to apply to a template output

function Smarty::register_postfilter($function) [line 844]Function Parameters:

string $function name of PHP function to register

Registers a postfilter function to apply to a compiled template after compilation

function Smarty::register_prefilter($function) [line 821]Function Parameters:

string $function name of PHP function to register

Registers a prefilter function to apply to a template before compiling

function Smarty::register_resource($type, $functions) [line 799]Function Parameters:

string $type name of resource array $functions array of functions to handle resource

Registers a resource to fetch a template

boolean function Smarty::template_exists($tpl_file) [line 1004]Function Parameters:

string $tpl_file

Page 570 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 618: PhpDocumentor 1.2.2 Manual

Checks whether requested template exists.

function Smarty::trigger_error($error_msg, [$error_type = E_USER_WARNING]) [line 1048]Function Parameters:

string $error_msg integer $error_type

trigger Smarty error

function Smarty::unregister_block($block) [line 744]Function Parameters:

string $block name of template function

Unregisters block function

function Smarty::unregister_compiler_function($function) [line 766]Function Parameters:

string $function name of template function

Unregisters compiler function

function Smarty::unregister_function($function) [line 695]Function Parameters:

string $function name of template function

Unregisters custom function

function Smarty::unregister_modifier($modifier) [line 788]Function Parameters:

Page 571 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 619: PhpDocumentor 1.2.2 Manual

string $modifier name of template modifier

Unregisters modifier

function Smarty::unregister_object($object) [line 721]Function Parameters:

string $object name of template object

Unregisters object

function Smarty::unregister_outputfilter($function) [line 879]Function Parameters:

string $function name of PHP function

Unregisters an outputfilter function

function Smarty::unregister_postfilter($function) [line 856]Function Parameters:

string $function name of PHP function

Unregisters a postfilter function

function Smarty::unregister_prefilter($function) [line 833]Function Parameters:

string $function name of PHP function

Unregisters a prefilter function

function Smarty::unregister_resource($type) [line 810]Function Parameters:

Page 572 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 620: PhpDocumentor 1.2.2 Manual

string $type name of resource

Unregisters a resource

function Smarty::_assign_smarty_interface() [line 1209]assign $smarty interface variable

string function Smarty::_generate_debug_output() [line 1240]generate debug output

Uses Smarty::$debug_tpl - debug template, used to display debugging output

Class Smarty_Compiler [line 47]

Template compiling class

Package Smarty

Constructor function Smarty_Compiler::Smarty_Compiler() [line 85]The class constructor.

function Smarty_Compiler::_add_plugin($type, $name, [$delayed_loading = null]) [line 1633]Function Parameters:

string $type

Page 573 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 621: PhpDocumentor 1.2.2 Manual

string $name boolean? $delayed_loading

add plugin

boolean function Smarty_Compiler::_compile_block_tag($tag_command, $tag_args, $tag_modifier, &$output) [line563]

Function Parameters:

string $tag_command string $tag_args string $tag_modifier string $output

compile block function tag sets $output to compiled block function tag

string function Smarty_Compiler::_compile_capture_tag($start, [$tag_args = '']) [line 1025]Function Parameters:

boolean $start true if this is the {capture} tag string $tag_args

Compile {capture} .. {/capture} tags

boolean function Smarty_Compiler::_compile_compiler_tag($tag_command, $tag_args, &$output) [line 498]Function Parameters:

string $tag_command string $tag_args string $output

Page 574 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 622: PhpDocumentor 1.2.2 Manual

compile the custom compiler tag sets $output to the compiled custom compiler tag

string function Smarty_Compiler::_compile_custom_tag($tag_command, $tag_args, $tag_modifier) [line 652]Function Parameters:

string $tag_command string $tag_args string $tag_modifier

compile custom function tag

true function Smarty_Compiler::_compile_file($tpl_file, $template_source, &$template_compiled) [line 214]Function Parameters:

string $tpl_file string $template_source string $template_compiled

compile a template file sets $template_compiled to the compiled source

string function Smarty_Compiler::_compile_foreach_start($tag_args) [line 960]Function Parameters:

string $tag_args

Compile {foreach ...} tag.

string function Smarty_Compiler::_compile_if_tag($tag_args, [$elseif = false]) [line 1052]Function Parameters:

Page 575 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 623: PhpDocumentor 1.2.2 Manual

string $tag_args boolean $elseif if true, uses elseif instead of if

Compile {if ...} tag

string function Smarty_Compiler::_compile_include_php_tag($tag_args) [line 822]Function Parameters:

string $tag_args

Compile {include ...} tag

string function Smarty_Compiler::_compile_include_tag($tag_args) [line 772]Function Parameters:

string $tag_args

Compile {include ...} tag

string function Smarty_Compiler::_compile_insert_tag($tag_args) [line 740]Function Parameters:

string $tag_args

Compile {insert ...} tag

string function Smarty_Compiler::_compile_plugin_call($type, $name) [line 1759]Function Parameters:

string $type string $name

compiles call to plugin of type $type with name $name

Page 576 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 624: PhpDocumentor 1.2.2 Manual

returns a string containing the function-name or method call without the paramter-listthat would have follow to make the call valid php-syntax

string function Smarty_Compiler::_compile_registered_object_tag($tag_command, $attrs, $tag_modifier) [line 684]Function Parameters:

string $tag_command array $attrs string $tag_modifier

compile a registered object tag

string function Smarty_Compiler::_compile_section_start($tag_args) [line 855]Function Parameters:

string $tag_args

Compile {section ...} tag

string function Smarty_Compiler::_compile_smarty_ref(&$indexes) [line 1652]Function Parameters:

string $indexes

Compiles references of type $smarty.foo

string function Smarty_Compiler::_compile_tag($template_tag) [line 367]Function Parameters:

string $template_tag

Compile a template tag

Page 577 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 625: PhpDocumentor 1.2.2 Manual

string function Smarty_Compiler::_expand_quoted_text($var_expr) [line 1413]Function Parameters:

string $var_expr

expand quoted text with embedded variables

function Smarty_Compiler::_load_filters() [line 1781]load pre- and post-filters

array function Smarty_Compiler::_parse_attrs($tag_args, [$quote = true]) [line 1270]Function Parameters:

string $tag_args true $quote unused?

Parse attribute string

string function Smarty_Compiler::_parse_conf_var($conf_var_expr) [line 1534]Function Parameters:

string $conf_var_expr

parse configuration variable expression into PHP code

array function Smarty_Compiler::_parse_is_expr($is_arg, $tokens) [line 1208]Function Parameters:

string $is_arg array $tokens

Parse is expression

function Smarty_Compiler::_parse_modifiers(&$output, $modifier_string) [line 1581]

Page 578 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 626: PhpDocumentor 1.2.2 Manual

Function Parameters:

string $output string $modifier_string

parse modifier chain into PHP code sets $output to parsed modified chain

string function Smarty_Compiler::_parse_parenth_args($parenth_args) [line 1517]Function Parameters:

string $parenth_args

parse arguments in function call parenthesis

string function Smarty_Compiler::_parse_section_prop($section_prop_expr) [line 1556]Function Parameters:

string $section_prop_expr

parse section property expression into PHP code

string function Smarty_Compiler::_parse_var($var_expr) [line 1438]Function Parameters:

string $var_expr

parse variable expression into PHP code

function Smarty_Compiler::_parse_vars_props(&$tokens) [line 1351]Function Parameters:

array $tokens

Page 579 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 627: PhpDocumentor 1.2.2 Manual

compile multiple variables and section properties tokens into PHP code

string function Smarty_Compiler::_parse_var_props($val, [$tag_attrs = null]) [line 1366]Function Parameters:

string $val string $tag_attrs

compile single variable and section properties token into PHP code

function Smarty_Compiler::_syntax_error($error_msg, [$error_type = E_USER_ERROR], [$file = null], [$line =null]) [line 1810]

Function Parameters:

string $error_msg integer $error_type string $file integer $line

display Smarty syntax error

Page 580 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 628: PhpDocumentor 1.2.2 Manual

block.strip.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_block_strip($params, $content, &$this) [line 21]Function Parameters:

array $params unused, no parameters for this block string $content content of {strip}{/strip} tags Smarty &$this clever method emulation

Smarty {strip}{/strip} block plugin Type: block function

Name: strip Purpose: strip unwanted white space from text

Link http://smarty.php.net/manual/en/language.function.strip.php

Page 581 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 629: PhpDocumentor 1.2.2 Manual

block.textformat.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_block_textformat($params, $content, &$this) [line 30]Function Parameters:

array $params Params: style: string (email) indent: integer (0) wrap: integer (80) wrap_char string ("\n") indent_char: string (" ") wrap_boundary: boolean (true) string $content contents of the block Smarty &$this clever simulation of a method

Smarty {textformat}{/textformat} block plugin Type: block function

Name: textformat Purpose: format text a certain way with preset styles or custom wrap/indent settings

Link http://smarty.php.net/manual/en/language.function.textformat.php

Page 582 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 630: PhpDocumentor 1.2.2 Manual

function.assign.phpSmarty plugin

Package Smarty Sub-Package plugins

function smarty_function_assign($params, &$smarty) [line 19]

Page 583 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 631: PhpDocumentor 1.2.2 Manual

function.assign_debug_info.phpSmarty plugin

Package Smarty Sub-Package plugins

function smarty_function_assign_debug_info($params, &$smarty) [line 18]Function Parameters:

array $params unused in this plugin, this plugin uses Smarty::$_config, Smarty::$_tpl_vars and Smarty::$_smarty_debug_info Smarty &$smarty

Smarty {assign_debug_info} function plugin Type: function

Name: assign_debug_info Purpose: assign debug info to the template

Page 584 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 632: PhpDocumentor 1.2.2 Manual

function.config_load.phpSmarty plugin

Package Smarty Sub-Package plugins

function smarty_function_config_load($params, &$smarty) [line 25]Function Parameters:

array $params Format: array('file' => required config file name, 'section' => optional config file section to load 'scope' => local/parent/global 'global' => overrides scope, setting to parent if true) Smarty &$smarty

Smarty {config_load} function plugin Type: function

Name: config_load Purpose: load config file vars

Link http://smarty.php.net/manual/en/language.function.config.load.php

Page 585 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 633: PhpDocumentor 1.2.2 Manual

function.counter.phpSmarty plugin

Package Smarty Sub-Package plugins

string|null function smarty_function_counter($params, &$smarty) [line 21]Function Parameters:

array $params parameters Smarty &$smarty

Smarty {counter} function plugin Type: function

Name: counter Purpose: print out a counter value

Link http://smarty.php.net/manual/en/language.function.counter.php

Page 586 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 634: PhpDocumentor 1.2.2 Manual

function.cycle.phpSmarty plugin

Package Smarty Sub-Package plugins

string|null function smarty_function_cycle($params, &$smarty) [line 44]Function Parameters:

array $params Smarty &$smarty

Smarty {cycle} function plugin Type: function

Name: cycle Date: May 3, 2002 Purpose: cycle through given values Input:

name = name of cycle (optional)values = comma separated list of values to cycle, or an array of values to cycle (this can be left out for subsequent calls)reset = boolean - resets given var to trueprint = boolean - print var or not. default is trueadvance = boolean - whether or not to advance the cycledelimiter = the value delimiter, default is ","assign = boolean, assigns to template var instead of printed. Examples:

{cycle values="#eeeeee,#d0d0d0d"} {cycle name=row values="one,two,three" reset=true} {cycle name=row}

Page 587 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 635: PhpDocumentor 1.2.2 Manual

Author credit to Jason Sweat < mailto:[email protected]> Version 1.3 Author credit to Gerard < mailto:[email protected]> Author credit to Mark Priatel < mailto:[email protected]> Author Monte Ohrt < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.function.cycle.php

Page 588 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 636: PhpDocumentor 1.2.2 Manual

function.debug.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_debug($params, &$smarty) [line 24]Function Parameters:

array $params Smarty &$smarty

Smarty {debug} function plugin Type: function

Name: debug Date: July 1, 2002 Purpose: popup debug window

Version 1.0 Author Monte Ohrt < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.function.debug.php

Page 589 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 637: PhpDocumentor 1.2.2 Manual

function.eval.phpSmarty plugin

Package Smarty Sub-Package plugins

function smarty_function_eval($params, &$this) [line 20]Function Parameters:

array $params Smarty &$this

Smarty {eval} function plugin Type: function

Name: eval Purpose: evaluate a template variable as a template

Link http://smarty.php.net/manual/en/language.function.eval.php

Page 590 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 638: PhpDocumentor 1.2.2 Manual

function.fetch.phpSmarty plugin

Package Smarty Sub-Package plugins

string|null function smarty_function_fetch($params, &$smarty) [line 22]Function Parameters:

array $params Smarty &$smarty

Smarty {fetch} plugin Type: function

Name: fetch Purpose: fetch file, web or ftp data and display results

Link http://smarty.php.net/manual/en/language.function.fetch.php

Page 591 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 639: PhpDocumentor 1.2.2 Manual

function.html_checkboxes.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_html_checkboxes($params, &$smarty) [line 40]Function Parameters:

array $params Smarty &$smarty

Smarty {html_checkboxes} function plugin File: function.html_checkboxes.php

Type: function Name: html_checkboxes Date: 24.Feb.2003 Purpose: Prints out a list of checkbox input types Input:

name (optional) - string default "checkbox"values (required) - arrayoptions (optional) - associative arraychecked (optional) - array default not setseparator (optional) - ie or &nbsp;output (optional) - without this one the buttons don't have names Examples:

{html_checkboxes values=$ids output=$names} {html_checkboxes values=$ids name='box' separator='<br>' output=$names} {html_checkboxes values=$ids checked=$checked separator='<br>' output=$names}

Uses smarty_function_escape_special_chars()

Page 592 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 640: PhpDocumentor 1.2.2 Manual

Version 1.0 Author credits to Monte Ohrt < mailto:[email protected]> Author Christopher Kvarme < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.function.html.checkboxes.php

function smarty_function_html_checkboxes_output($name, $value, $output, $selected, $extra, $separator,$labels) [line 118]

Page 593 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 641: PhpDocumentor 1.2.2 Manual

function.html_image.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_html_image($params, &$smarty) [line 37]Function Parameters:

array $params Smarty &$smarty

Smarty {html_image} function plugin Type: function

Name: html_image Date: Feb 24, 2003 Purpose: format HTML tags for the image Input:

file = file (and path) of image (required)border = border width (optional, default 0)height = image height (optional, default actual height)image =image width (optional, default actual width)basedir = base directory for absolute paths, default is environment variable DOCUMENT_ROOT Examples: {image file="images/masthead.gif"} Output: <img

src="images/masthead.gif" border=0 width=400 height=23>

Uses smarty_function_escape_special_chars() Version 1.0 Author credits to Duda < mailto:[email protected]> - wrote first image function inrepository, helped with lots of functionality

Page 594 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 642: PhpDocumentor 1.2.2 Manual

Author Monte Ohrt < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.function.html.image.php

Page 595 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 643: PhpDocumentor 1.2.2 Manual

function.html_options.phpSmarty plugin

Package Smarty Sub-Package plugins

function smarty_function_html_options($params, &$smarty) [line 29] function smarty_function_html_options_optgroup($key, $values, $selected) [line 107] function smarty_function_html_options_optoutput($key, $value, $selected) [line 94]

Page 596 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 644: PhpDocumentor 1.2.2 Manual

function.html_radios.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_html_radios($params, &$smarty) [line 40]Function Parameters:

array $params Smarty &$smarty

Smarty {html_radios} function plugin File: function.html_radios.php

Type: function Name: html_radios Date: 24.Feb.2003 Purpose: Prints out a list of radio input types Input:

name (optional) - string default "radio"values (required) - arrayoptions (optional) - associative arraychecked (optional) - array default not setseparator (optional) - ie or &nbsp;output (optional) - without this one the buttons don't have names Examples:

{html_radios values=$ids output=$names} {html_radios values=$ids name='box' separator='<br>' output=$names} {html_radios values=$ids checked=$checked separator='<br>' output=$names}

Uses smarty_function_escape_special_chars()

Page 597 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 645: PhpDocumentor 1.2.2 Manual

Version 1.0 Author credits to Monte Ohrt < mailto:[email protected]> Author Christopher Kvarme < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.function.html.radios.php

function smarty_function_html_radios_output($name, $value, $output, $selected, $extra, $separator, $labels) [line121]

Page 598 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 646: PhpDocumentor 1.2.2 Manual

function.html_select_date.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_html_select_date($params, &$smarty) [line 33]Function Parameters:

array $params Smarty &$smarty

Smarty {html_select_date} plugin Type: function

Name: html_select_date Purpose: Prints the dropdowns for date selection.

ChangeLog:

1.0 initial release1.1 added support for +/- N syntax for begin and end year values. (Monte)1.2 added support for yyyy-mm-dd syntax for time value. (Jan Rosier)1.3 added support for choosing format for month values (Gary Loescher)1.3.1 added support for choosing format for day values (Marcus Bointon)

Author Andrei Zmievski Version 1.3 Link http://smarty.php.net/manual/en/language.function.html.select.date.php

Page 599 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 647: PhpDocumentor 1.2.2 Manual

Page 600 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 648: PhpDocumentor 1.2.2 Manual

function.html_select_time.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_html_select_time($params, &$smarty) [line 22]Function Parameters:

array $params Smarty &$smarty

Smarty {html_select_time} function plugin Type: function

Name: html_select_time Purpose: Prints the dropdowns for time selection

Uses smarty_make_timestamp() Link http://smarty.php.net/manual/en/language.function.html.select.time.php

Page 601 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 649: PhpDocumentor 1.2.2 Manual

function.html_table.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_html_table($params, &$smarty) [line 38]Function Parameters:

array $params Smarty &$smarty

Smarty {html_table} function plugin Type: function

Name: html_table Date: Feb 17, 2003 Purpose: make an html table from an array of data Input:

loop = array to loop throughcols = number of columnstable_attr = table attributestr_attr = table row attributes (arrays are cycled)td_attr = table cell attributes (arrays are cycled)trailpad = value to pad trailing cells with Examples:

{table loop=$data} {table loop=$data cols=4 tr_attr='"bgcolor=red"'} {table loop=$data cols=4 tr_attr=$colors}

Link http://smarty.php.net/manual/en/language.function.html.table.php Version 1.0 Author Monte Ohrt < mailto:[email protected]>

Page 602 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 650: PhpDocumentor 1.2.2 Manual

function smarty_function_html_table_cycle($name, $var) [line 79]

Page 603 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 651: PhpDocumentor 1.2.2 Manual

function.mailto.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_mailto($params, &$smarty) [line 49]Function Parameters:

array $params Smarty &$smarty

Smarty {mailto} function plugin Type: function

Name: mailto Date: May 21, 2002 Purpose: automate mailto address link creation, and optionally encode them. Input:

address = e-mail addresstext = (optional) text to display, default is addressencode = (optional) can be one of: * none : no encoding (default) * javascript : encode with javascript * hex : encode with hexidecimal (no javascript)cc = (optional) address(es) to carbon copybcc = (optional) address(es) to blind carbon copysubject = (optional) e-mail subjectnewsgroups = (optional) newsgroup(s) to post tofollowupto = (optional) address(es) to follow up toextra = (optional) extra tags for the href link Examples:

{mailto address="[email protected]"} {mailto address="[email protected]" encode="javascript"} {mailto address="[email protected]" encode="hex"} {mailto address="[email protected]" subject="Hello to you!"} {mailto address="[email protected]" cc="[email protected],[email protected]"} {mailto address="[email protected]" extra='class="mailto"'}

Page 604 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 652: PhpDocumentor 1.2.2 Manual

Author credits to Jason Sweat (added cc, bcc and subject functionality) Author Monte Ohrt < mailto:[email protected]> Version 1.2 Link http://smarty.php.net/manual/en/language.function.mailto.php

Page 605 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 653: PhpDocumentor 1.2.2 Manual

function.math.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_math($params, &$smarty) [line 21]Function Parameters:

array $params Smarty &$smarty

Smarty {math} function plugin Type: function

Name: math Purpose: handle math computations in template

Link http://smarty.php.net/manual/en/language.function.math.php

Page 606 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 654: PhpDocumentor 1.2.2 Manual

function.popup.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_popup($params, &$smarty) [line 21]Function Parameters:

array $params Smarty &$smarty

Smarty {popup} function plugin Type: function

Name: popup Purpose: make text pop up in windows via overlib

Link http://smarty.php.net/manual/en/language.function.popup.php

Page 607 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 655: PhpDocumentor 1.2.2 Manual

function.popup_init.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_function_popup_init($params, &$smarty) [line 21]Function Parameters:

array $params Smarty &$smarty

Smarty {popup_init} function plugin Type: function

Name: popup_init Purpose: initialize overlib

Link http://smarty.php.net/manual/en/language.function.popup.init.php

Page 608 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 656: PhpDocumentor 1.2.2 Manual

function.var_dump.php

Package Smarty Sub-Package plugins

function smarty_function_var_dump($params, &$smarty) [line 13]Smarty plugin

------------------------------------------------------------- Type: function Name: assign Purpose: assign a value to a template variable -------------------------------------------------------------

Page 609 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 657: PhpDocumentor 1.2.2 Manual

modifier.capitalize.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_capitalize($string) [line 20]Function Parameters:

string $string

Smarty capitalize modifier plugin Type: modifier

Name: capitalize Purpose: capitalize words in the string

Linkhttp://smarty.php.net/manual/en/language.modifiers.php#LANGUAGE.MODIFIER.CAPITALIZE

Page 610 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 658: PhpDocumentor 1.2.2 Manual

modifier.cat.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_cat($string, $cat) [line 26]Function Parameters:

string $string string $cat

Smarty cat modifier plugin Type: modifier

Name: cat Date: Feb 24, 2003 Purpose: catenate a value to a variable Input: string to catenate Example: {$var|cat:"foo"}

Version 1.0 Author Monte Ohrt < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.modifier.cat.php

Page 611 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 659: PhpDocumentor 1.2.2 Manual

modifier.count_characters.phpSmarty plugin

Package Smarty Sub-Package plugins

integer function smarty_modifier_count_characters($string, [$include_spaces = false]) [line 21]Function Parameters:

string $string boolean $include_spaces include whitespace in the character count

Smarty count_characters modifier plugin Type: modifier

Name: count_characteres Purpose: count the number of characters in a text

Link http://smarty.php.net/manual/en/language.modifier.count.characters.php

Page 612 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 660: PhpDocumentor 1.2.2 Manual

modifier.count_paragraphs.phpSmarty plugin

Package Smarty Sub-Package plugins

integer function smarty_modifier_count_paragraphs($string) [line 20]Function Parameters:

string $string

Smarty count_paragraphs modifier plugin Type: modifier

Name: count_paragraphs Purpose: count the number of paragraphs in a text

Link http://smarty.php.net/manual/en/language.modifier.count.paragraphs.php

Page 613 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 661: PhpDocumentor 1.2.2 Manual

modifier.count_sentences.phpSmarty plugin

Package Smarty Sub-Package plugins

integer function smarty_modifier_count_sentences($string) [line 20]Function Parameters:

string $string

Smarty count_sentences modifier plugin Type: modifier

Name: count_sentences Purpose: count the number of sentences in a text

Link http://smarty.php.net/manual/en/language.modifier.count.paragraphs.php

Page 614 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 662: PhpDocumentor 1.2.2 Manual

modifier.count_words.phpSmarty plugin

Package Smarty Sub-Package plugins

integer function smarty_modifier_count_words($string) [line 20]Function Parameters:

string $string

Smarty count_words modifier plugin Type: modifier

Name: count_words Purpose: count the number of words in a text

Link http://smarty.php.net/manual/en/language.modifier.count.words.php

Page 615 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 663: PhpDocumentor 1.2.2 Manual

modifier.date_format.phpSmarty plugin

Package Smarty Sub-Package plugins

require_once 'shared','make_timestamp' [line 11]

Include the shared.make_timestamp.php plugin

string|void function smarty_modifier_date_format($string, [$format = "%b %e, %Y"], [$default_date = null]) [line 30]Function Parameters:

string $string string $format string $default_date

Smarty date_format modifier plugin Type: modifier

Name: date_format Purpose: format datestamps via strftime Input:

string: input date stringformat: strftime format for outputdefault_date: default date if $string is empty

Uses smarty_make_timestamp() Link http://smarty.php.net/manual/en/language.modifier.date.format.php

Page 616 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 664: PhpDocumentor 1.2.2 Manual

Page 617 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 665: PhpDocumentor 1.2.2 Manual

modifier.debug_print_var.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_debug_print_var($var, [$depth = 0], [$length = 40]) [line 22]Function Parameters:

array|object $var integer $depth integer $length

Smarty debug_print_var modifier plugin Type: modifier

Name: debug_print_var Purpose: formats variable contents for display in the console

Link http://smarty.php.net/manual/en/language.modifier.debug.print.var.php

Page 618 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 666: PhpDocumentor 1.2.2 Manual

modifier.default.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_default($string, [$default = '']) [line 21]Function Parameters:

string $string string $default

Smarty default modifier plugin Type: modifier

Name: default Purpose: designate default value for empty variables

Link http://smarty.php.net/manual/en/language.modifier.default.php

Page 619 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 667: PhpDocumentor 1.2.2 Manual

modifier.escape.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_escape($string, [$esc_type = 'html']) [line 21]Function Parameters:

string $string html|htmlall|url|quotes|hex|hexentity|javascript $esc_type

Smarty escape modifier plugin Type: modifier

Name: escape Purpose: Escape the string according to escapement type

Link http://smarty.php.net/manual/en/language.modifier.escape.php

Page 620 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 668: PhpDocumentor 1.2.2 Manual

modifier.htmlentities.php

Package Smarty Sub-Package plugins

function smarty_modifier_htmlentities($string) [line 13]Smarty plugin

------------------------------------------------------------- Type: modifier Name: upper Purpose: convert string to uppercase -------------------------------------------------------------

Page 621 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 669: PhpDocumentor 1.2.2 Manual

modifier.indent.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_indent($string, [$chars = 4], [$char = " "]) [line 22]Function Parameters:

string $string integer $chars string $char

Smarty indent modifier plugin Type: modifier

Name: indent Purpose: indent lines of text

Link http://smarty.php.net/manual/en/language.modifier.indent.php

Page 622 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 670: PhpDocumentor 1.2.2 Manual

modifier.lower.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_lower($string) [line 20]Function Parameters:

string $string

Smarty lower modifier plugin Type: modifier

Name: lower Purpose: convert string to lowercase

Link http://smarty.php.net/manual/en/language.modifier.lower.php

Page 623 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 671: PhpDocumentor 1.2.2 Manual

modifier.nl2br.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_nl2br($string) [line 28]Function Parameters:

string $string

Smarty plugin Type: modifier

Name: nl2br Date: Feb 26, 2003 Purpose: convert \r\n, \r or \n to <br> Input:

contents = contents to replacepreceed_test = if true, includes preceeding break tags in replacement Example: {$text|nl2br}

Author Monte Ohrt < mailto:[email protected]> Version 1.0 Link http://smarty.php.net/manual/en/language.modifier.nl2br.php

Page 624 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 672: PhpDocumentor 1.2.2 Manual

modifier.rawurlencode.php

Package Smarty Sub-Package plugins

function smarty_modifier_rawurlencode($string) [line 13]Smarty plugin

------------------------------------------------------------- Type: modifier Name: rawurlencode Purpose: encode string for use in PDFdefaultConverter TOC -------------------------------------------------------------

Page 625 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 673: PhpDocumentor 1.2.2 Manual

modifier.regex_replace.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_regex_replace($string, $search, $replace) [line 22]Function Parameters:

string $string string|array $search string|array $replace

Smarty regex_replace modifier plugin Type: modifier

Name: regex_replace Purpose: regular epxression search/replace

Link http://smarty.php.net/manual/en/language.modifier.regex.replace.php

Page 626 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 674: PhpDocumentor 1.2.2 Manual

modifier.replace.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_replace($string, $search, $replace) [line 22]Function Parameters:

string $string string $search string $replace

Smarty replace modifier plugin Type: modifier

Name: replace Purpose: simple search/replace

Link http://smarty.php.net/manual/en/language.modifier.replace.php

Page 627 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 675: PhpDocumentor 1.2.2 Manual

modifier.spacify.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_spacify($string, [$spacify_char = ' ']) [line 21]Function Parameters:

string $string string $spacify_char

Smarty spacify modifier plugin Type: modifier

Name: spacify Purpose: add spaces between characters in a string

Link http://smarty.php.net/manual/en/language.modifier.spacify.php

Page 628 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 676: PhpDocumentor 1.2.2 Manual

modifier.string_format.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_string_format($string, $format) [line 21]Function Parameters:

string $string string $format

Smarty string_format modifier plugin Type: modifier

Name: string_format Purpose: format strings via sprintf

Link http://smarty.php.net/manual/en/language.modifier.string.format.php

Page 629 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 677: PhpDocumentor 1.2.2 Manual

modifier.strip.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_strip($text, [$replace = ' ']) [line 26]Function Parameters:

string $text string $replace

Smarty strip modifier plugin Type: modifier

Name: strip Purpose: Replace all repeated spaces, newlines, tabs with a single space orsupplied replacement string. Example: {$var|strip} {$var|strip:"&nbsp;"} Date: September 25th, 2002

Version 1.0 Author Monte Ohrt < mailto:[email protected]> Link http://smarty.php.net/manual/en/language.modifier.strip.php

Page 630 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 678: PhpDocumentor 1.2.2 Manual

modifier.strip_tags.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_strip_tags($string, [$replace_with_space = true]) [line 21]Function Parameters:

string $string boolean $replace_with_space

Smarty strip_tags modifier plugin Type: modifier

Name: strip_tags Purpose: strip html tags from text

Link http://smarty.php.net/manual/en/language.modifier.strip.tags.php

Page 631 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 679: PhpDocumentor 1.2.2 Manual

modifier.truncate.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_truncate($string, [$length = 80], [$etc = '...'], [$break_words = false]) [line 25]Function Parameters:

string $string integer $length string $etc boolean $break_words

Smarty truncate modifier plugin Type: modifier

Name: truncate Purpose: Truncate a string to a certain length if necessary, optionally splitting in themiddle of a word, and appending the $etc string.

Link http://smarty.php.net/manual/en/language.modifier.truncate.php

Page 632 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 680: PhpDocumentor 1.2.2 Manual

modifier.upper.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_upper($string) [line 20]Function Parameters:

string $string

Smarty upper modifier plugin Type: modifier

Name: upper Purpose: convert string to uppercase

Link http://smarty.php.net/manual/en/language.modifier.upper.php

Page 633 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 681: PhpDocumentor 1.2.2 Manual

modifier.wordwrap.phpSmarty plugin

Package Smarty Sub-Package plugins

string function smarty_modifier_wordwrap($string, [$length = 80], [$break = "\n"], [$cut = false]) [line 23]Function Parameters:

string $string integer $length string $break boolean $cut

Smarty wordwrap modifier plugin Type: modifier

Name: wordwrap Purpose: wrap a string of text at a given length

Link http://smarty.php.net/manual/en/language.modifier.wordwrap.php

Page 634 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 682: PhpDocumentor 1.2.2 Manual

outputfilter.trimwhitespace.phpSmarty plugin

Package Smarty Sub-Package plugins

function smarty_outputfilter_trimwhitespace($source, &$smarty) [line 28]Function Parameters:

string $source Smarty &$smarty

Smarty trimwhitespace outputfilter plugin File: outputfilter.trimwhitespace.php

Type: outputfilter Name: trimwhitespace Date: Jan 25, 2003 Purpose: trim leading white space and blank lines from template source after it getsinterpreted, cleaning up code and saving bandwidth. Does not affect PRE>></PRE> and <SCRIPT></SCRIPT> blocks. Install: Drop into the plugin directory, call

1 $smarty-> load_filter('output','trimwhitespace');

from application.

Version 1.3 Author Contributions from Lars Noschinski < mailto:[email protected]> Author Monte Ohrt < mailto:[email protected]>

function smarty_outputfilter_trimwhitespace_replace($search_str, $replace, &$subject) [line 64]

Page 635 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 683: PhpDocumentor 1.2.2 Manual

shared.escape_special_chars.phpSmarty shared plugin

Package Smarty Sub-Package plugins

string function smarty_function_escape_special_chars($string) [line 18]Function Parameters:

string $string

escape_special_chars common function Function: smarty_function_escape_special_chars

Purpose: used by other smarty functions to escape special chars except for alreadyescaped ones

Usedby smarty_function_html_radios() Usedby smarty_function_html_image() Usedby smarty_function_html_checkboxes()

Page 636 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 684: PhpDocumentor 1.2.2 Manual

shared.make_timestamp.phpSmarty shared plugin

Package Smarty Sub-Package plugins

string function smarty_make_timestamp($string) [line 16]Function Parameters:

string $string

Function: smarty_make_timestamp Purpose: used by other smarty functions to make a timestamp from astring.

Usedby smarty_modifier_date_format() Usedby smarty_function_html_select_time()

Page 637 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 685: PhpDocumentor 1.2.2 Manual

Appendices

Page 638 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 686: PhpDocumentor 1.2.2 Manual

Appendix A - Class Trees

Package phpDocumentor

abstractLink

abstractLinkclassLinkdefineLinkfunctionLinkglobalLinkmethodLink

varLink

pageLinktutorialLink

Classes

Classes

ErrorTracker

ErrorTracker

EventStack

EventStack

Io

Page 639 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 687: PhpDocumentor 1.2.2 Manual

Io

parserBase

parserBaseparserElement

parserClassparserDefineparserFunction

parserMethod

parserGlobalparserIncludeparserVar

parserInlineTagparserIdInlineTagparserInheritdocInlineTagparserLinkInlineTag

parserTutorialInlineTag

parserSourceInlineTagparserTocInlineTag

parserStringWithInlineTagsparserBparserBrparserCDataparserCodeparserDescparserDescVarparserIparserKbdparserListparserPackagePage

parserTutorial

parserPreparserSampparserTag

parserAccessTagparserFileSourceTag

parserExampleTag

parserLinkTag

Page 640 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 688: PhpDocumentor 1.2.2 Manual

parserLicenseTagparserSeeTag

parserTutorialTagparserUsesTag

parserUsedByTag

parserNameTagparserReturnTag

parserVarTagparserParamTag

parserStaticvarTag

parserXMLDocBookTag

parserData

parserData

parserDocBlock

parserDocBlock

Page 641 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 689: PhpDocumentor 1.2.2 Manual

parserEntity

parserEntity

parserPage

parserPage

phpDocumentor_IntermediateParser

phpDocumentor_IntermediateParser

phpDocumentor_setup

phpDocumentor_setup

ProceduralPages

ProceduralPages

Publisher

PublisherParser

parserDescParserPDFParserphpDocumentorTParser

phpDocumentor_HighlightParser

ppageParserXMLPackagePageParser

Page 642 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 690: PhpDocumentor 1.2.2 Manual

RecordWarning

RecordWarningRecordError

WordParser

WordParserObjectWordParserphpDocumentorTWordParser

phpDocumentor_HighlightWordParser

Package HTML_TreeMenu

HTML_TreeMenu

HTML_TreeMenu

HTML_TreeMenu_Presentation

HTML_TreeMenu_PresentationHTML_TreeMenu_DHTMLHTML_TreeMenu_Listbox

Page 643 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 691: PhpDocumentor 1.2.2 Manual

HTML_TreeNode

HTML_TreeNodeDirNode

Package Converters

Converter

ConverterCHMdefaultConverterCSVdia2codeConverterHTMLframesConverterHTMLSmartyConverterPDFdefaultConverterXMLDocBookConverterXMLDocBookpeardoc2Converter

PDFParser

Parser (Different package)PDFParser

phpdocpdf

Cezpdf (Different package)phpdocpdf

Page 644 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 692: PhpDocumentor 1.2.2 Manual

Package Cpdf

Cpdf

CpdfCezpdf

phpdocpdf

Package Smarty

Config_File

Config_File

Smarty

SmartySmarty_Compiler

Package tests

Page 645 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 693: PhpDocumentor 1.2.2 Manual

Appendix B -README/CHANGELOG/INSTALL

Page 646 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 694: PhpDocumentor 1.2.2 Manual

ChangeLog

$Id: ChangeLog,v 1.710.2.95 2003/08/19 15:49:39 CelloG Exp $ -------------------------Release 1.2.2------------------------ 2003-08-19 Gregory Beaver <[email protected]> * fixed [ 791030 ] old PHP version bug /t and ' becomes to &quot; * fixed [ 791131 ] old PHP version bug in output, if define contains "(" * fixed [ 791023 ] bug in output: <br;&nbsp;/> * fixed [ 791023 ] bug in output: <br;&nbsp;/>, also implemented <function> handling in all html templates 2003-08-18 Gregory Beaver <[email protected]> * fixed [ 790685 ] HighlightParser doesn't link class::method() outside methods 2003-08-13 Gregory Beaver <[email protected]> * added fix for 781913 for procedural pages * really fixed [ 781913 ] usedby not when @uses at class level * fixed [ 788271 ] HighlightParser links to methods before classes * fixed [ 780332 ] {@link} is closing the link prematurely when a ',' is found * fixed [ 788251 ] {@link function blah()} and {@link object blah} fail * fixed [ 784810 ] stat failing. * peardoc2: added use of &true; &false; and &null; in @param description * peardoc2: added word wrapping for the benefit of translators * more simple list fixes 2003-08-10 Gregory Beaver <[email protected]> * fixed [ 786180 ] simple lists fail if line starts with an inline tag 2003-08-08 Gregory Beaver <[email protected]> * fixed bugs in constants/globals peardoc2 generation 2003-08-06 Gregory Beaver <[email protected]> * fixed [ 781913 ] usedby not when @uses at class level 2003-08-01 Gregory Beaver <[email protected]> * fixed 2 typos in XML:DocBook/peardoc2:default 2003-07-31 Joshua Eichorn <[email protected]> * Spell false right 2003-07-30 Joshua Eichorn <[email protected]> * Don't die on empty @param or @return 2003-07-29 Gregory Beaver <[email protected]> * Fixed bug in PDF Converter, wasn't finding fonts (PEAR install only) * Made PEAR do replacements on makedocs.ini so it works out of the box * Fixed [ 779552 ] "Documention" instead of "Documentation" in generated pages * Remove stupid use of publicweb_uri :) * Remove possibility to change back to HTML:default * Fixed pear install, to use new publicweb_dir and publicweb_uri * added new pear-based docbuilder that relies on publicweb_dir config variable * fixed missing {@id} in manual.pkg * removed @include_once and now use file_exists/is_readable to catch

Page 647 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 695: PhpDocumentor 1.2.2 Manual

those errors. * removed all exception handling code. We haven't used it since June 2002. * added Io::isIncludable() for future use 2003-07-28 Gregory Beaver <[email protected]> * fixed the last bug with linking in the PDF Converter, removed debug code * fixed bug in global variable linking in PDF Converter * fixed [ 778920 ] tutorial link warning * fixed CHM Converter, added index generation (CHM index) 2003-07-27 Gregory Beaver <[email protected]> * fixed @filesource in PDF Converter * fixed index and table of contents * added color highlighting to PDF converter source code! * started work on CHM converter. It's generating a couple of bad links that need to turn good 2003-07-26 Gregory Beaver <[email protected]> * fixed the PDF Converter - it's beeyootiful * fixed serious bug - double postprocessing of highlighted docblock source. * fixed even more serious bug - splitting of tokens into line numbers was totally wrong in phpDocumentorTWordParser. Now file highlighting works perfectly (and even looks good in Mozilla!) * moved around the manual * fixed minor bugs in documentation * added text color possibility to PDF Converter! Will be modifying to do color syntax highlighting over the next couple of days * Modified docbuilder to add option of parsing in external window. I like to be able to just hit refresh. 2003-07-25 Gregory Beaver <[email protected]> * fixed some more problems - all done now * fixed all the problems in XML:DocBook/peardoc2:default * fixed problem with phpdoc.bat in PEAR install * ran PEAR_PackageFileManager to create package.xml * fixed problems with PEAR! * phpDocumentor now officially conflicts with PHPDoc * Applied fixes to ignore from PEAR_PackageFileManager 2003-07-24 Gregory Beaver <[email protected]> * Changed behavior again: If the first element in a file is a class, the docblock belongs to the class. * Updated all documentation to reflect this change in behavior * Improved error messages for Page-level DocBlocks * Changed behavior: if the first docblock in a file contains a @package tag, it is a page-level DocBlock 2003-07-22 Gregory Beaver <[email protected]> * fixed [ 772441 ] nested arrays fail parser * fixed DocBook/peardoc2 generation * fixed [ 768947 ] Multiple vars not recognised * fixed [ 767251 ] broken links when no files in default package 2003-07-21 Joshua Eichorn <[email protected]> * fixed [ 765455 ] phpdoc can't find php if it is in /usr/local/bin -------------------------Release 1.2.1------------------------ 2003-07-03 Gregory Beaver <[email protected]>

Page 648 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 696: PhpDocumentor 1.2.2 Manual

* config.php fixed [ 765765 ] docbuilder can't change ini dir * default.ini changed version to 1.2.1 in title * DocBlockTags.ini got rid of surrounding <p></p> for single-paragraph @tag descriptions 2003-07-03 William Hardeman <[email protected]> * fixed [ 765753 ] Extraneous trailing "-" in @uses when no description 2003-07-02 Gregory Beaver <[email protected]> * ready version numbering/package.xml for release 1.2.1 * fixed [ 753641 ] phpdoc -h output * fixed [ 757077 ] smarty templates_c not in release for HTML:frames:default * fixed up a few bugs in the @example change * fixed bugs in CHMdefault Converter and PDFdefault Converter * Applied Sam Blum's fixes to @example (with a few changes) * tags.example.pkg updated docs * fixed [ 750264 ] @ignore won't work with DocBlock Templates /**#@+ * fixed [ 731750 ] Links to unparsed includes shown (reopened) * fixed [ 735134 ] HTML:Smarty:default Documentation can not be printed, added print.css and modified header.tpl to use it for print 2003-07-01 Gregory Beaver <[email protected]> * fixed [ 764412 ] Complex class inheritance/package causes endless loop 2003-06-29 Gregory Beaver <[email protected]> * applied Josh's fix for 749841 to all errors.tpl 2003-06-29 Joshua Eichorn <[email protected]> * fixed [ 754067 ] Use the code from pear to find php 2003-06-29 Gregory Beaver <[email protected]> * fixed improper fix for 750392 * fixed [ 750392 ] Formatting doesn't work in Templates /**#@+ * fixed [ 752040 ] phpDocumentor 1.2.0 can't parse itself in php < 4.3.0 * fixed [ 751066 ] Return type of a constructor is not void. * fixed [ 751101 ] output error when optional parameters are in use * phpDocumentorTParser::handleFunctionParams() removed bizarre double statement (not a bug, just inefficient) * fixed [ 753278 ] @see parent::_privatefunc causes endless loop 2003-06-28 Gregory Beaver <[email protected]> * fixed [ 752015 ] Docbuilder problems * fixed [ 755681 ] include error in docbuilder file_dialog.php * fixed [ 758387 ] Use of undefined constants in DocBlockTags.inc on line 830 * fixed [ 757841 ] JavaScript-Error cause of Package-Name * updated phpdoc.bat with fix from Sam Blum 2003-06-27 Gregory Beaver <[email protected]> * Replaced phpdoc.bat with Sam Blum's phpdoc.bat, fixing 749446 * Added Release-1.2.1 * fixed [ 755688 ] lost image(s) * fixed [ 756730 ] preview image for HTML:Smarty not found 2003-06-07 William K. Hardeman <[email protected]> * Fixed bug [ 750461 ] by modifying HTMLSmartyConverter::WriteSource(), HTMLSmartyConverter::getSourceLink(), HTMLSmartyConverter::getSourceAnchor(), HTMLSmartyConverter::returnSee(), and HTMLSmartyConverter::convertClass(). * Fixed bug [ 750441 ] by adding HTMLSmartyConverter::getCurrentPageLink() method.

Page 649 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 697: PhpDocumentor 1.2.2 Manual

* Updated HandS template to include a trailing space before the closing ) in a function/method definition. 2003-06-04 Gregory Beaver <[email protected]> * made parsing stop if target is empty before any parsing is done -------------------------Release 1.2.0------------------------ 2003-06-04 Gregory Beaver <[email protected]> * phpDocumentorTParser::usesTagHandler() fixed [ 748837 ] @uses with spaces * tags.inlinelink.pkg fixed [ 748850 ] {@link} documentation is unclear 2003-06-04 William K. Hardeman <[email protected]> * Added two new tags arrays available for template use: $info_tags and $api_tags in Converter.inc [ 748419 ] * Updated HandS template to use the new tags arrays. 2003-06-03 Gregory Beaver <[email protected]> * phpDocumentor_IntermediateParser::_getSourceLocation() fixed [ 748314 ] --pear on php4/pear uses . as dirname * parserExampleTag::parserExampleTag fixed [ 747733 ] cannot use same filename + different path in @example 2003-06-02 Gregory Beaver <[email protected]> * changed in-file license notices to PHP license version 3 * updated docs to reflect new template/authorship * added new HTML:Smarty:HandS template * fixed [ 746690 ] DocBlocks not parsed for require_once statements * fixed [ 746692 ] makedoc.sh $TITLE bug * fixed [ 746674 ] phpedit - vars, methods * IntermediateParser.inc fixed minor warning if converter output type not found 2003-05-30 Gregory Beaver <[email protected]> * changed version to 1.2.0 readying for release * ProceduralPages::pathMatchesParsedFile() fixed [ 731750 ] Links to unparsed includes shown 2003-05-29 Gregory Beaver <[email protected]> * parserLinkInlineTag fixed [ 744028 ] {@link $el, $notfound} returns blank text * phpDocumentor_IntermediateParser::_setupUsesList() fixed [ 744026 ] @uses breaks on Classes.inc * Converter::formatUsesList() removed * DescHTML.inc fixed warning if <code></code> is used in docblock without any contents * Parser.inc fixed empty <code></code> that prompted discovery of above 2003-05-26 Gregory Beaver <[email protected]> * HighlightParser::getInlineTags() fixed bug in handling of the end of {@internal}} in special cases * Fixed @uses docs minor typo * Fixed @see docs minor typo * Fixed @filesource docs to have accurate example 2003-05-25 Gregory Beaver <[email protected]> * Cleaned up docbuilder (no more javascript/include errors!) * Switched to use of DIRECTORY_SEPARATOR (about time) * fix small but significant bugs in XML:DocBook/peardoc2 thanks to A. Merz 2003-05-23 Gregory Beaver <[email protected]>

Page 650 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 698: PhpDocumentor 1.2.2 Manual

* ParserDocBlock fixed [ 740871 ] crash in DocBlockTags.inc line 99 * IntermediateParser fixed [ 739740 ] Page-level docs are not generated without a @package tag * fixed [ 741887 ] case-sensitivity bug 2003-05-20 Gregory Beaver <[email protected]> * fixed [ 740859 ] @uses in docblock template crashes parser 2003-05-17 Gregory Beaver <[email protected]> * fixed [ 729841 ] Source code only for certain file if same name used * fixed [ 730214 ] weird filesource * fixed [ 736832 ] Fatal error in phpDocumentorTParser.inc * fixed warnings if a tutorial file doesn't exist * fixed [ 732642 ] DocBook support broken/incomplete. 2003-05-07 Gregory Beaver <[email protected]> * docbuilder fixed 731560 docbuilder include error on linux * phpDocumentorhowto.pkg fixed documentation of -it command-line to make it clearer * ParserDescParser::doSimpleList() fixed 732900 ordered list messes up * Io.inc fixed 733100 phpdoc's help output shows 2 times option "quiet" * parserLicenseTag::parserLicenseTag() fixed 733352 optional description parameter in @license tag 2003-05-02 Gregory Beaver <[email protected]> * fixed 729360 - quietMode broken 2003-04-29 Gregory Beaver <[email protected]> * ParserDescCleanup.inc fixed 729653, tons of warnings * ObjectWordParser::getWord() fixed 729638 - case insensitivity breaks tutorial parsing -----------------Release 1.2.0rc 2----------------------- 2003-04-28 Gregory Beaver <[email protected]> * readied for release * phpDocumentorTParser::handleDesc() fixed [ 727823 ] "#@+"-block quirck? * phpDocumentorTParser::handleJavaDocDesc() fixed [ 727823 ] "#@+"-block quirck? * ParserDescCleanup.inc fixed [ 728167 ] HTML tags are case sensitive * all options.ini fixed [ 728585 ] static keyword 2003-04-25 Gregory Beaver <[email protected]> * tags.category.pkg fixed incorrect example (oops) 2003-04-24 Andrew Eddie <[email protected]> * Change CHM class icon * Added suport for grouping of index entries in CHM converter * Made presentation of CHM docblock and methods more like MSDN format * Moved 'docBuilder' index to the root directory * Added links and introduction pages to docBuilder 2003-04-23 Gregory Beaver <[email protected]> * Converter::getFileSourcePath() removed ending PATH_DELIMITER, removing annoying extra \ in output * HTML:*,CHM:* fixed getFileSourcePath() references that need PATH_DELIMITER * ParserDescParser fixed [ 726195 ] Formatting tags breaks lists required LOTS of changes * set Smarty::$use_sub_dirs to false, removed all the %% dirs from cvs * parserLicenseTag added @package to docblock

Page 651 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 699: PhpDocumentor 1.2.2 Manual

2003-04-22 Gregory Beaver <[email protected]> * docbuilder: changed top.html to top.php, removes warning * docbuilder: changed misspelling of phpDocumentor * Updated Authors/README, manual.pkg author list * Applied Andrew Eddie's templates CHM:default:default method.tpl, hhp.tpl and index.hhk.tpl * Applied Andrew Eddie's changes to CHMdefaultConverter.inc * README updated * parserCode::Convert() fixed [ 725742 ] code tag alignment * fixed warnings if -po and nothing parsed is in the packages specified * phpDocumentor_IntermediateParser::addPageIfNecessary() fixed 725788 if --packageoutput excludes files with classes 2003-04-21 Gregory Beaver <[email protected]> * Converter::getClassesOnPage() fixed 725161, File view displays class symbols without names * HTMLSmartyConverter::formatLeftIndex() fixed 725745, HTML:Smarty:PHP not creating ric_README.html. Needed call to writeRIC() * XMLDocBookpeardoc2Converter fixed non-linking to constants/globals * fixed [ 725247 ] Wrong list handling in peardoc converter * fixed [ 725251 ] Peardoc converter again * XMLDocBookpeardoc2Converter fixed many fatal errors (oops) * Errors.inc changed {@inheritdoc} to {@}inheritdoc} in comment (oops) * RoadMap updated for 2.0 * parserExampleTag was no title if @example file.php instead of @exampel file.php title, fixed this 2003-04-20 Gregory Beaver <[email protected]> * fixed mistake in reworking of getLink() * parserLinkTag fixed [ 724857 ] @link URL text broken * Classes::processChild() fixed 724701 conflicting package names, inherited links fails to show up - this was an OLD bug, and is a good one to fix * Converter::getLink() split up the method into several helper methods to aid debugging. Found a potential problem with the use of each on the array $packages - moved to use of $package = array_shift(array_keys($packages)) instead of list ($package,) = each($packages), fixing 724415 Non-package references not always resolved * Smarty-2.5.0/* updated to new phpDocumentor comments from Smarty CVS * HighlightParser fixed 724417 Multi-level method references not linked and I must say it is a beautiful thing * ChangeLog removed pre-l.0 changelog, people can get old changelog from cvs attic or from previous releases 2003-04-19 Gregory Beaver <[email protected]> * HTML:frames:default top_frame.tpl added target="right" * implemented feature request 722987 Relative example files * implemented --examplesdir command-line for 722987 * tags.example.pkg updated documentation * phpDocumentor.howto.pkg updated docs 2003-04-19 Marco Von Ballmoos <[email protected]> * Converter::_processTutorials() Fixed tutorial navigation bug - The tutorial tree builder first builds a list of tutorials that are named as parents by other tutorials. Then, for each tutorial in that list, it looks to see if each tutorial is named as a child by any other tutorial. If it found that it was, it was removed *from the list of parents*. That meant that any tutorials in the potential parents list that named a removed tutorial as a parent would be incorrectly identified

Page 652 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 700: PhpDocumentor 1.2.2 Manual

as a root tutorial. * Changed HTML:frames:default package selector to stop using JavaScript * Small updates to the document trees in all templates 2003-04-18 Gregory Beaver <[email protected]> * fixed 723947, RIC parsing not reading the correct README * Setup.inc.php removed reference to Template.inc * HTMLframesConverter.cls finished documentation entirely * removed the HTMLdefaultConverter entirely. No one has complained about it, and we will always convert templates to framesConverter if people ask removed old documentation too * default.ini updated documentation, added templatebase option * added --templatebase command-line to implement feature 704808, command-line switch for template directory/converter directory, also added documentation for this * added all templates_c directories to CVS, to remove the need to have write access to anywhere in phpdocumentor, unless you change the source, fixing 708928 write permissions needed on some program dirs * HighlightParser::retrieveType() fixed 723767 space needed after @param type $var * migrated to Smarty 2.5.0 * phpDocumentorTParser::retrieveType() fixed 723320 @param output behaves funny * blank.tpl fixed {$phpdocver} to {$phpdocversion} * HighlightParser::retrieveType() fixed 723230 warning on line 1391, HighlightParser * blank.tpl made this file a little sexier in all HTML-based templates * Converter.inc removed second declaration of var $class (oops) now phpDocumentor is PHP5-ready (for documenting php 4, of course) 2003-04-17 Gregory Beaver <[email protected]> * common.inc.php changed version to 1.2.0rc2dev * Release-1.2.0rc2 added, to prepare for next release -----------------Release 1.2.0rc 1----------------------- 2003-04-16 Gregory Beaver <[email protected]> * Readying for release 1.2.0rc1 * phpDocumentorTParser::handleGlobal() fixed global line numbering * implemented feature 695621, link to section of @filesource from each element * phpDocumentorTWordParser::addSource() fixed case of blank lines being erased from source * phpDocumentor_setup::readConfigFile() fixed 710700 empty defaultpackagename = caused busy loop * HighlightParser::retrieveType() added function to fix 715077, HighlightParser needs @tag object classname support * phpDocumentorTParser::retrieveType() fixed warning in special case 2003-04-15 Gregory Beaver <[email protected]> * Converter::getLink() fixed 718253 Using 'parent' in @example file causes crash 2003-04-14 Gregory Beaver <[email protected]> * HighlightParser::$tagHandlers added @tutorial and @license as core tags * bug698356_Output() removed @todo * parserSourceInlineTag::arrayConvert() removed @todo * removed double write of example source due to double processing of all class-level docblocks in HTML*Converter (small speedup too) * applied fixes to CHM converter

Page 653 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 701: PhpDocumentor 1.2.2 Manual

* fixed @license tag * HTML*Converter::writeSource/writeExample added \n to output to make it prettier, easier to read * HTMLSmartyConverter::getSourceLink() removed weird reference to non- existing getSourceFilename() method * tags.link.pkg updated docs * tags.license.pkg new docs for new tag * parserLicenseTag added source to DocBlockTags, implementing 714025, @license tag * phpDocumentorTParser::retrieveType() fixed @param object $var (was parsing as "object $var" instead of "object" and "$var" as variable name * HighlightParser::handleClassMember() fixed 715084 HighlightParser craps out after $var-> * parserExampleTag::parserExampleTag() fixed 715452 @example doesn't work with anything other than .php 2003-04-14 Marco Von Ballmoos <[email protected]> * Class access level available in templates * Source files no longer overwrite each other * Link to file for class available in templates * Access level in class icons for HTML:frames:earthli * Link from class to file docs in all templates * HTMLFramesConverter::writeSource() - updated to used shared file source methods * HTMLFramesConverter::getSourceLink() - updated to used shared file source methods * HTMLFramesConverter::makeLeft() - added 'access' as a property for classes 2003-04-14 Gregory Beaver <[email protected]> * parserFunction::getIntricateFunctionCall() fixed 713954, @param type $var when &$var broken * default.ini added new templates to example generation 2003-04-13 Marco Von Ballmoos <[email protected]> * Updated the HTML:frames:l0l33t and HTML:frames:DOM/l0l33t to the same layouter used by the other renderers. Once again, the style sheet is different (and there are a couple of small differences in the templates). * Updated all HTML:frames templates to show other packages in a frame at the top, inside a combo-box instead of in the square frame in the top-left. * Fixed reference to 'Class.png' which was appearing in Opera and IE. 2003-04-13 Marco Von Ballmoos <[email protected]> * Converter::$processed_tutorials Added this property to track which tutorials are already in the tutorial tree * Converter::getTutorialTree() Updated to use the list of already- processed tutorials. * Converter::_tutorial_path() added to retrieve the string id for a tutorial. * Converter::_setupTutorialTree() Fixed to use new path and processed tutorial functions to generate a tree with one and only one copy of each tutorial. * Fixed HTML:frames:default and HTML:frames:phphtmllib to handle tutorial correctly. * Rewrote the tutorial template layouts and XMLDocBook tag matching tables for the affected templates. * Moved HTML:frames:earthli to HTML:frames:DOM/earthli and added HTML:frames:earthli as a non-DOM version of the template. * Integrated tutorials into the main document tree for all DOM and non-DOM templates in HTML:frames (except for l0l33t -- coming soon).

Page 654 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 702: PhpDocumentor 1.2.2 Manual

* Updated HTML:frames:default, HTML:frames:phpdoc.de, HTML:frames:phphtmllib to use the latest version of the non-DOM templates. Layout is handled by the same basic templates as HTML:frames:earthli (there are, after all, only so many nice ways to lay out documentation) and specializations are done using the stylesheet. This allows documentation to be tweaked to a good degree after it has already been generated. * Updated HTML:frames:DOM/default, HTML:frames:DOM/phpdoc.de to use the WebFXTree to render the tree instead of the previous custom code. * Added HTML:frames:DOM/phphtmllib * Fixed some bugs in the tutorial nesting for PHPDocumentor's documentation. * Moved earthli image source files to 'phpdoc/media/images/earthli' to avoid copying them into each distribution of documentation. 2003-04-03 Gregory Beaver <[email protected]> * Setup.inc.php fixed bug if no -o command-line specified, was using default instead of frames converter 2003-04-03 Marco Von Ballmoos <[email protected]> * Converter::convertMethod() added 'access' property * Converter::convertVar() added 'access' property * Converter::getFormattedInheritedMethods() added 'access' property * Converter::getFormattedInheritedVars() added 'access' property * HTMLFramesConverter::getIndexInformation() added 'access' property * Updated entire icon set for 'earthli' theme. * Removed unused files from 'earthli' template. * Cleaned up the HTML:frames:default and HTML:frames:phphtmllib templates. Both are now based on the same layout as the HTML:frames:earthli template, but use a non-DOM tree and different stylesheets. Otherwise the code for all three is the same. 2003-04-02 Gregory Beaver <[email protected]> * added bugfix to release notes 2003-04-01 Marco von Ballmoos <[email protected]> * Updated earthli template with properly named 'Page.gif' file. (must be uppercase so that *nix-based servers can see it.) 2003-04-01 Gregory Beaver <[email protected]> * XMLDocBookpeardoc2 converter: fixed several template issues * Errors.inc added PDERROR_EMPTY_EXAMPLE_TITLE error for empty @example title * CHM, HTML, PDF converters: added warning if @example title is empty * phpDocumentorTParser::handleFuncGlobal() fixed 713201 variable variables are not parsed properly in @global * ParserDescParser fixed 708914 <var>, <samp>, <kbd> broken 2003-03-31 Gregory Beaver <[email protected]> * parserDocBlock::replaceInheritDoc() fixed 711569 Fatal Error: Undefined Method during write * PDERROR_INHERITDOC_DONT_WORK_HERE new warning for {@inheritdoc} in non-child class docblock * fixed 712704 HTML:Smarty:* drops class level author information * ParserDescParser::resetStartList() fixed notice * ParserDescParser::setupStates() fixed 710366 <i>-Tag is ignored 2003-03-23 Gregory Beaver <[email protected]> * README added more notes of thanks to people who have helped make this thingy better * PDFdefaultConverter::writeExample() fixed stupid typo thanks to Darren

Page 655 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 703: PhpDocumentor 1.2.2 Manual

Cook * made @returns an alias to @return * ParserDescParser::handleSimpleList() fixed numbered lists * Converter::sourceLine() fixed 701199 extra br in @filesource generation * fixed bug 708559, @category tag not really working * ParserDescParser::handleEscape() fixed rare case of <<<tag>>> not working <<<<tag>>>> will never work, unless someone needs it. :) * tags.abstract.pkg added new docs on @abstract * tags.final.pkg added new docs on @final * HighlighParser added @final as a core tag * phpDocumentor.ini added @final as a valid tag * ParserDescParser::handleSimpleList() fixed parsing of simple lists if they are the last thing in a docblock * phpDocumentorTParser::retrieveType() fixed logic bug if @param object and no @param object objectname * phpDocumentorTParser::retrieveType() fixed warning * XML:DocBook/peardoc2 removed links to class $vars since they are not documented in peardoc2 2003-03-22 Gregory Beaver <[email protected]> * XMLDocBookpeardoc2Converter implemented the rest of A. Merz's suggestions regarding @throws and @access 2003-03-20 Gregory Beaver <[email protected]> * HTMLframesConverter fixed doc error * phpDocumentor.howto.pkg fixed typo * XMLDocBookpeardoc2Converter::endClass() removed write-out of class summary * Errors.inc added missing multiple category tags * Converter::walk_everything() fixed bug noticed by A. Merz * XMLDocBookpeardoc2Converter fixed bugs in package.xml generation * XMLDocBookpeardoc2Converter fixed bugs in category.xml generation * package.tpl/class_summary.tpl for peardoc2 converter, fixed up to match requirements of A. Merz. * tags.example.pkg, tags.filesource.pkg added warning about PHP 4.3.0 requirement * phpDocumentor.howto.pkg added docs about phpDocumentor.ini * phpDocumentorTParser added more doc comments * phpDocumentorTParser cleaned up tag handling code * applied feature request for @tag object classname * XMLDocBookpeardoc2Converter docblock.tpl - applied A. Merz's fix to method parameters 2003-03-17 Gregory Beaver <[email protected]> * XMLDocBookConverter added safety catch so nobody can use it until it has templates * HighlightParser made @category a core tag * XMLDocBookpeardoc2Converter fixed lowercasing of @category * XMLDocBookpeardoc2Converter fixed directory names if @package contains underscores or periods like Spreadsheet_Excel_Writer * tags.return.pkg updated docs to reflect changes made in 1.1.0 with smart @return value parsing (class names and value|value|classname) 2003-03-14 Gregory Beaver <[email protected]> * updated phpdoc.php/new_phpdoc.php to have new peardoc2 --output format * updated makedocs.ini to have XML:DocBook/peardoc2:default 2003-03-13 Gregory Beaver <[email protected]> * HTMLframesConverter.cls added more docs * HTMLframesConverter moved title to elementindex.tpl/pkgelementindex.tpl

Page 656 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 704: PhpDocumentor 1.2.2 Manual

to make I18N easier. * Io::Io() fixed 702549, --quiet option not valid? * improved phpDocumentor.howto.pkg description of --quiet 2003-03-10 Gregory Beaver <[email protected]> * added more docs to HTMLframesConverter.cls * add warnings for use of @filesource/sourcecode = on in PHP < 4.3.0 * HTMLframesConverter.cls fixed typo * CHMdefaultConverter::Output() fixed {@source} tag to match new syntax * parserSourceInlineTag::arrayConvert() re-fixed 657041 {@source} doesn't work right once and for all. * ParserFunction::$returnsreference fixed minor error in docs * ParserFunction::getFunctionCall() fixed minor error in docs * HTMLSmartyConverter::convertTutorials() fixed 695622 HTML:Smarty:* has no package-level docs * phpDocumentorTParser::getInlineTags() fixed 698356 {@internal} not working properly * HTMLframesConverter.cls continued the march to completing documentation. 2003-03-08 Gregory Beaver <[email protected]> * phpDocumentorTParser fixed 698468 Fatal error when inline tag across two lines 2003-03-06 Gregory Beaver <[email protected]> * create_package.xml.php fixed typo 2003-03-05 Gregory Beaver <[email protected]> * ParserDescParser::handleList() fixed 697644, text outside <li></li> crashes * ParserDescParser::parse() fixed 697644, any unclosed html tag crashes * Errors.inc added PDERROR_UNCLOSED_TAG and PDERROR_TEXT_OUTSIDE_LI * phpDocumentorTParser::handleLinkInlineTag fixed 698417 {@link element descrip} wrong * HTMLframesConverter.cls fixed typo * Converter::convertTutorial() fixed unterminated {@link} in docblock * added new ParserPDF.cls documentation * ParserPDF.inc added documentation * HTMLframesConverter.cls added documentation * template.vars.cls improved documentation, added some omissions 2003-03-04 Gregory Beaver <[email protected]> * parserCode::Convert() fixed 696883 <code> in description crashes parser, was using ProgramExample() even in PHP 4.2.3 * fixed 697656 putting a <code> inside a <li> turns it into a literal * PDFdefaultConverter::convertPage()/convertClass() tidied up a bit * PDF:default:default pages.tpl - {if includeheader} should be {if $includeheader}. Fixes problem with multiple procedural page headers * phpdocpdf::ezNewPage() Fixed 697156 PHP Warning with PDF Converter * Cezpdf::ezWhatPageNumber() patched to give error if page numbering not started instead of just doing a PHP warning on line 311 * create_package.xml.php added dependency on PHP 4.1.0 or greater to package.xml generation, and generic dependency generation * Release-1.2.0rc1 update for next release * package.xml change description field to be more attractive 2003-03-03 Gregory Beaver <[email protected]> * added question to FAQ about inline @example tag (we use <code></code>) 2003-03-03 Marco Von Ballmoos <[email protected]>

Page 657 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 705: PhpDocumentor 1.2.2 Manual

* Updated index rendering to use more variables instead of just 'listing'. Consolidated package and full index rendering into one function. 'listing' property is retained for compatibility with existing templates. * Updated HTML:frames:earthli template. Takes advantage of new variables in the HTMLframesConverter. 2003-03-02 Marco Von Ballmoos <[email protected]> * fixed a bug in the generated page information. Classes were included even if they were marked private and 'parseprivate' was off. 2003-03-01 Gregory Beaver <[email protected]> * moved what was once in classname.xml to packagename.xml * fixed bugs in new packagename.xml generation * XMLDocBookpeardoc2Converter::formatLeftIndex() implemented output of packagename.xml file to complete DocBook/peardoc2 converter 2003-02-28 Gregory Beaver <[email protected]> * HTML:Smarty:PHP header.tpl fixed {$todolink} to {$subdir}{$todolink} * phpDocumentor_IntermediateParser::addUses() fixed 695482, @uses not checking to see if element is @access private * phpDocumentor.howto.pkg, inlinetags.pkg added docs about {@*} * Added use of {@*} to insert */ into a docblock for code examples * Converter::formatUsesList() fixed 692552 wasn't checking for class name if @uses class::method() or class::$var, so if more than one class contained a method named "method()" only the first class in the list would get the @usedby tag as a result * Converter::formatUsesList() partial fix for 692552, @uses is screwy If a @uses methodname() or @uses $varname was used in a class, no @usedby would be inserted * phpDocumentorTParser::getInlineTags() fixed 693215, {@internal}} on single line is broken * HighlightParser::getInlineTags() add missing space after {@internal * added new @todo for XML:DocBook/peardoc2 * updated @todo tags * HighlightParser::handleClassMember() fixed 687364 highlightparser $class->member incorrect * IntermediateParser::HandleEvent() fixed bug if --sourcecode on and a file has no page-level docblock, no source was being generated * IntermediateParser.inc fixed 675871, --pear breaks if non-pear repository * class.phpdocpdf.php fixed 694742 PDF converter has no table of contents * HTMLSmartyConverter fixed 695291 added todo list to all generated templates * phpedit/class.tpl fixed 694594 PEAR mode: destructor image not shown by phpedit template 2003-02-27 Gregory Beaver <[email protected]> * tutorials.pkg added information about {@toc}, {@id} * ParserDescCleanup.inc fixed basics.desc reference * phpDocumentor.howto.pkg/IntermediateParser.inc fixed using.command-line.quiet * clarified phpDocumentor.pkg and tutorials.pkg slightly 2003-02-25 Gregory Beaver <[email protected]> * added earthli template to documentation, updated XML:DocBook:peardoc2 to XML:DocBook/peardoc2:default * applied 693213 to PDF Converter * fixed 693213 tutorials post-processed twice * fixed 689874 is_a is not avaliable in PHP 4.1.0 * fixed 689893 Warnings on PHP 4.1.0 2003-02-24 Gregory Beaver <[email protected]>

Page 658 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 706: PhpDocumentor 1.2.2 Manual

* removed page_summary.tpl, page.tpl, function.tpl from peardoc2 converter * added constants.tpl/globals.tpl to XML:DocBook/peardoc2:default * added new constants.xml/globals.xml output for peardoc2 * removed function code from peardoc2 - no PEAR projects can have functions * removed procedural page code from peardoc2 converter * fixed faulty getIncludeValue() call in CHMdefaultConverter * remove pear_phpdoc, no longer necessary * added tags.category.pkg (forgot last time) 2003-02-18 Marco Von Ballmoos <[email protected]> * Added support for method and variable override resolution beyond direct descendents and ancestors. That is, redefinitions in ALL descendent classes are shown, and overrides are displayed if the signature matches that of a method or variable in ANY ancestor class. * Added a new template HTML:frames:earthli, which is driven almost purely by a stylesheet (media/stylesheet.css). * Fixed a bug that always returned false from CONVERTER::getvars. 2003-02-18 Gregory Beaver <[email protected]> * Added @category * made new XML:DocBook/peardoc2 converter, was too PEAR-specific. * added category support to new converter * fixed several category-related bugs, may be a few left over * directory hierarchy of peardoc2 converter is now 100% 2003-02-17 Gregory Beaver <[email protected]> * fixed toc errors in Converter.cls and Converter.methods.cls * Defined PDFdefaultConverter::postProcess() * Try out fix to catch all pdf output for debugging 2003-02-16 Gregory Beaver <[email protected]> * template.vars.cls - fixed typo * ParserDescParser::doSimpleList() - fixed PHP warning * ParserDescCleanup.inc - implemented partial 687366, phpEdit-style list support * phpDocumentorTParser::getInlineTags() - fixed 687403 ,{@source} leaves "}" 2003-02-15 Gregory Beaver <[email protected]> * template.vars.cls added in all default template vars * fixed 687091 special characters not encoded 2003-02-14 Gregory Beaver <[email protected]> * removed default HTML converter from PEAR release * changed role="script" to role="php" for phpdoc script. the pear installer has no recognition for role="script" (checked source code) 2003-02-08 Gregory Beaver <[email protected]> * moved convertTutorial() to Converter * fixed warning in PDF converter * added debug_backtrace() to class.pdf.php, maybe find the Cpdf bug * implemented 683101 starting/ending line numbers for uml-related elements 2003-02-07 Gregory Beaver <[email protected]> * fixed bug in handling of {@internal}} * changed {@source} syntax, updated manual * fixed 657041 (again), {@source} not working right * created Release-1.2.0rc1 to prepare * fixed 680652, optional method/function parameters ignored

Page 659 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 707: PhpDocumentor 1.2.2 Manual

* removed debug code * phpDocumentorTParser - fixed 682491, multi-line description fubared in @tag * phpDocumentorTParser - fixed bug in getInlineTags() that screwed <pre></pre> * fixed related bug in phpDocumentorTParser to 682490 * fixed 682490, {@internal}} not parsed right by highlightparser * fixed 681735, need warning for {@source} in sdesc 2003-02-06 Gregory Beaver <[email protected]> * fixed unterminated {@internal}} in ParserElements.inc :) * added error check for unterminated {@internal}} * HTML-based converters - removed unused xml test for package pages * Converter.inc - removed PHP warnings if tutorial child not found * HighlightParser.inc - made all core tags highlighted as such * HighlightParser.inc - removed @todo tags * HighlightParser.inc - fixed bug if // comment is on line before DocBlock * HighlightParser.inc - fixed bug in handling of /**#@-*/ * fixed more 681470 problems * fixed 681470 problems 2003-02-05 Gregory Beaver <[email protected]> * stupid thing isn't working, unfixing 681470 * fixed docblock template errors in parserdesccleanup * fixed feature 681470 implementation attempt * added beginning of implementation of feature 681470. Still buggy, but works very well for actual highlighting, it's the stuff around it that is broken * added class knowledge to {@source} * fixed 681463, {@source} drops characters * fixed 681459, needed strpos instead of strrpos for test, then strrpos for getInlineTags() * cleaned up XMLpackagePageParser.inc doc comments * cleaned up Setup.inc.php doc comments * cleaned up Publisher.inc doc comments * cleaned up phpDocumentorTWordParser.inc doc comments * cleaned up WordParser.inc doc comments * cleaned up ParserElements.inc doc comments * cleaned up ParserDocBlock.inc doc comments * cleaned up ParserDescCleanup.inc doc comments * cleaned up ParserData.inc doc comments * cleaned up Parser.inc doc comments * finished work on PackagePageElements doc comments * fixed subtle bug in @tag description conversion if the description had multiple paragraphs * fixed mistakes in DocBlockTags.inc doc comments * fixed 566663, @param &$arg broken 2003-02-04 Gregory Beaver <[email protected]> * fixed stupid bug introduced in LinkClasses * started work on PackagePageElements doc comments * cleaned up LinkClasses.inc doc comments * cleaned up Io.inc doc comments * cleaned up IntermediateParser.inc doc comments * cleaned up InlineTags.inc doc comments * finished documentation of HighlightParser.inc 2003-02-03 Gregory Beaver <[email protected]> * began documentation of HighlightParser.inc * cleaned up EventStack.inc doc comments

Page 660 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 708: PhpDocumentor 1.2.2 Manual

* cleaned up Errors.inc doc comments * cleaned up DocBlockTags.inc doc comments * cleaned up DescHTML.inc doc comments * cleaned up Converter.inc doc comments 2003-02-02 Gregory Beaver <[email protected]> * fixed up Converter.inc documentation comments * made include linking MUCH smarter * changed version to 1.2.0rc1, starting feature freeze -----------------Release 1.2.0beta 3----------------------- 2003-02-02 Gregory Beaver <[email protected]> * prepared release * Added Harald Fielker's CSVdia2code converter, updated docs * removed possibility of more than one @filesource tag * fixed small mistake in IntermediateParser that disabled @filesource * cleaned up some mistakes in documentation * changed @uses syntax. Now it accepts a description. Does not allow comma-delimited list, each @uses must have its own element * changed every @uses in the source to match the new syntax 2003-02-01 Gregory Beaver <[email protected]> * added --sourcecode option, to generate highlighted source for every file since source code highlighting is still unstable, this might not work * added @package tags to everything, to get rid of phpdoc warnings * removed cleanup_for_pear.php, not needed any longer * removed --pear sets constructors to @access private as this makes no sense * fixed 677826, {@link} in @see should raise error 2003-01-31 Gregory Beaver <[email protected]> * made --pear set constructors to @access private * clarified --pear docs * fixed 677105 * fixed broken links introduced by yesterday's changes * added getId() as standard Converter function * removed $local parameter from returnSee() in all HTML-based converters 2003-01-30 Gregory Beaver <[email protected]> * fixed 677938, whitespace screwy in highlightparser * fixed 677821, define not parsed right * fixed 677822, {@source} not showing whole line * added docblock back into class parsing * re-added missing else in Io.inc (thanks Marko) * fixed bugs in inherited vars/methods introduced by last change * moved most converter functions to Converter, cut down code size, make updating easier 2003-01-27 Gregory Beaver <[email protected]> * trying fix for 675871 * fixed 670440, Io::getBase() error with patch from Marko Kaning * moved newSmarty() to Converter * fixed todolist.html to {$subdir}todolist.html for HTMLSmarty * moved highlightsource/highlightdocblocksource to Converter * changed getPPageId() to getTutorialId() so that it makes sense * forged ahead on Converter documentation * fixed stupid {$todolist} instead of {$todolink} * fixed up CHMdefaultConverter, no errors with help workshop 4.4 * fixed fatal error in CHMdefault * added forgotten link to @todo list to left frame

Page 661 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 709: PhpDocumentor 1.2.2 Manual

* added a few @todos 2003-01-26 Gregory Beaver <[email protected]> * fixed crash in Converter @todo list generation * implemented 675194, -cp (Christian will be happy about this one), added docs to phpDocumentor.howto.pkg about it * implemented 674470, output a list of all @todos * fixed bug in new tokenizer parser when inline tags have no params like {@source}, {@inheritdoc} 2003-01-25 Gregory Beaver <[email protected]> * fixed trivial warnings in both HTML Converters * fixed HighlightSource in HTMLSmarty Converter * removed confusing "assuming package XXX" if no @package tag * improved look of PDF Converter slightly * added @filesource, @example support to PDF Converter * fixed 661317, subpackage tutorial links broken in PDF Converter 2003-01-24 Gregory Beaver <[email protected]> * fixed 674059, added makedocs.ini * fixed 674053, missing require_once support in old Parser * started work on single @todo listing for whole project * completed inline tag support and {@internal}} support * fixed all the weird linebreak problems * fixed ghastly green color of core tags in highlighted source * fixed hang in HighlightParser 2003-01-23 Gregory Beaver <[email protected]> * applied test fix for determining whether we are in PEAR or not * add find_phpdoc.php * fixed 671620, warning in Parser.inc * fixed 672149, @desc broken * HIGHLY improved HighlightParser. It is now stable * made all source-related tags use HighlightParser 2003-01-22 Gregory Beaver <[email protected]> * improved documentation slightly for inline {@id} and WordParser::getWord() 2003-01-21 Gregory Beaver <[email protected]> * improved HighlightParser, it's almost stable now 2003-01-20 Gregory Beaver <[email protected]> * improved HighlightParser, it's almost stable now 2003-01-19 Gregory Beaver <[email protected]> * added new HighlightParser for doing phpxref-style stuff. Still unstable * removed faulty "fix" for HTML*Converter::PreserveWhiteSpace() * added "name" to list of classes on a page, in addition to sdesc, link * updated documentation for DocBlock Desc * applied recent HTMLframes fixes to CHMdefault * fixed stupid HTMLframes_outputfilter usage in Smarty Converter * fixed 670205 inherited methods have no links * fixed 670350, package-level doc woes in HTMLframes * fixed documentation typos pointed out by Darren Cook * added inline example using <code> to tags.example.pkg * added <<tag>> for escaping tags in desc, so <<code>> instead of &gt;code&lt; * added <var>, <samp>, <kbd> as per request

Page 662 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 710: PhpDocumentor 1.2.2 Manual

* fixed terrible nesting bug(s) in ParserDescCleanup * fixed 670903 2003-01-18 Gregory Beaver <[email protected]> * changed version to beta3 for next cycle * fixed 670341, <pre> not quite working for HTML converters -----------------Release 1.2.0beta 2----------------------- 2003-01-17 Gregory Beaver <[email protected]> * implemented 650251, @filesource * implemented 670184, @example * added @uses documentation * fixed 669909, package pages don't work with PDF, by removing package page support: all package pages must be in tutorial format to work well anyways * added docs for @example, haven't implemented it yet though * fixed 669615, methods disappear * implemented {@internal}} * fixed 669613, fatal error in XML:DocBook * fixed 669640 javadocdesc broken * fixed 669525, child class sdesc wrong in parent documentation * implemented @internal, have to think about how to do {@internal} * implemented --ignore-tags feature request * fixed 669132, weird @package/@ignore combo causes problems * fixed bug in <p></p> handling pointed out by Dan * applied Christian Dickmann's fixes to Smarty Converter 2003-01-16 Gregory Beaver <[email protected]> * improved use of tab panes in phpedit template 2003-01-14 Gregory Beaver <[email protected]> * fixed wrong linking to package-level page in HTMLframesConverter * fixed phpedit template annoying bug tabpane not selected when an anchor is selected 2003-01-13 Gregory Beaver <[email protected]> * fixed bug caused by not unsetting strings parsed in function body * cleaned up inherited vars/methods in phpedit template * fixed sorting of methods so constructor/destructor are always first in the list * removed element index from subpackage in phpedit template, redundant * fixed 666307, whitespace not ignored for @tags that need it * added more documentation * added pear_phpdoc file for pear release 2003-01-11 Gregory Beaver <[email protected]> * added use of ifunction_call to html templates * added ifunction_call variable to Smarty/frames converter with intricate function call output for customization 2003-01-10 Gregory Beaver <[email protected]> * made it 1.2.0beta1b * added feature 663439 -p, --pear commandline switch - destructor detection - $_privatevar/$_privatemethod detection, warning if no @access private - guesses package based on dir location relative to pear/ (package DB is in pear/DB, package DB subpackage tests is pear/DB/tests) * since pear.php.net is foobared, updating beta1a to include new features 2003-01-08 Gregory Beaver <[email protected]> * no @package warning was a bit overzealous (reported no @package for every

Page 663 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 711: PhpDocumentor 1.2.2 Manual

file, sometimes twice :). Now it works * fixed silly bug in phpDocumentorTParser.inc, no $this-> in $this->_pv_quote_data * readied PEAR 1.2.0beta1a release now that Archive_Tar has been fixed 2003-01-07 Gregory Beaver <[email protected]> * implemented feature 663436, title available for all pages in HTMLSmarty/frames * implemented feature 663437, error if @package missing * fixed bug 664058, @param not displayed in HTMLframesConverter 2003-01-06 Gregory Beaver <[email protected]> * fixed bug in checkIgnore for parsing CHANGELOG/README/INSTALL * fixed bug in checkIgnore for create_package.xml.php * fixed bug 662630, {}-delimited vars in strings in functions screws up new parser 2003-01-04 Gregory Beaver <[email protected]> * fixed warning in new tokenizer parser * fixed web interface 2003-01-04 Joshua Eichorn <[email protected]> * Make lists in Smarty templates have smaller padding/margin 2003-01-04 Gregory Beaver <[email protected]> * changed self-location code to dirname(realpath(__FILE__)) * fixed stupid bug introduced by removing static from frames converter * removed static from frames converter * fixed bug 661976 - @see broken * fixed stylesheet for l0l33t 2003-01-02 Gregory Beaver <[email protected]> * removed all html output for xmldocbookconverter except errors.html * made all DescHTML classes in DescHTML subpackage * made all PackagePageElements classes in Tutorials subpackage * moved Documentation/spec/ to Documentation/old/ * fixed up create_package.xml.php for next release * added Release-1.2.0beta1 * fixed bug in Io.inc for ignore dir/ on windows * fixed bug 661316, @tutorial tutorial.ext#section broken * modified manual as per Josh's suggestions * fixed bug in HTMLSmartyConverter if -o HTML:Smarty:default,HTML:Smarty:PHP the second run of smarty wouldn't generate $this->package_index because of the use of a static variable. Switched it to a class variable. * removed all static vars from HTMLSmartyConverter, switched them to class variables. * fixed HTMLSmartyConverter index.html problems 2003-01-01 Gregory Beaver <[email protected]> * Happy New Year! * fixed new_phpdoc.php clickable helper thingies * same fix for phpdoc.php * fixed warning in InlineTags.inc * fixed warnings in ParserDescCleanup.inc * fixed crash in PDFdefaultConverter on unknown tag * added media directory for PDF:default:default * fixed formatting of converting information display in walk_everything() * fixed bug 658120 - PDFdefaultConverter define.tpl typo that was wreaking havoc * fixed warnings in phpDocumentorTParser * fixed bug 658121 - sorting issues in PDFdefaultConverter * fixed bug if multiple templates in -o command-line * updated sample .ini files in user/

Page 664 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 712: PhpDocumentor 1.2.2 Manual

2002-12-31 Gregory Beaver <[email protected]> * made {@source} absolutely kickass for phpDocumentorTParser, now highlights in all output formats! * fixed phpDocumentorTParser bug if there is a $variable in a "string" * added more documentation, fixed up existing docs * reformatted whitespace to spaces, docblocks to PEAR-desired format 2002-12-30 Gregory Beaver <[email protected]> * restored refnamediv - broke titles! * fixed a few small bugs in new parser * fixed @link tag - wasn't linking! * fixed missing line number in defines for HTMLframesConverter * added missing var_default to HTML:frames:phpedit vars.tpl template * finished experimental tokenizer-based parser, disabled for php < 4.3.0 * tokenizer parser is twice as fast as original parser! * updated docs to reflect new parser 2002-12-29 Gregory Beaver <[email protected]> * fixed bug in {@id}, tutorial name was not being passed to packagepageparser * fixed problems in PDF Converter * removed refnamediv from output (it is considered the title of refentry) * fixed bug, no refsect1s past the first one were being parsed for {@toc} * fixed bug, titles not being parsed out properly in several cases for {@toc} * started work on a tokenizer-based parser, phpDocumentorTParser 2002-12-27 Gregory Beaver <[email protected]> * added support for <i> in DocBlock desc (oops) * added tag contents detail in tutorials for unmatched tag error * added unterminated attribute error in tutorials, very handy! * fixed attributes in tutorials, added quote handler * added {@toc} tag to allow table of contents (of current file) to be easily inserted anywhere in a tutorial 2002-12-26 Gregory Beaver <[email protected]> * added conversion of docbook tables into html/chm, fixed bug in attribute parsing of tutorials 2002-12-25 Gregory Beaver <[email protected]> * Merry Christmas! * added automatic retrieval of section/subsection title for {@tutorial tutorial.ext#section.subsection} * added missing ; to class.tpl and page.tpl in XML:DocBook:peardoc2 * fixed getPPageId() for HTML/CHM converters, should have just been returning id so that it would allow {@tutorial tutorial.ext#section.subsection} to work * fixed prev/next linking for tutorials again (this time actually works) * fixed tutorial tree generation, separated it from tutorial order generation * fixed tutorial linking for {@tutorial} in tutorials * fixed {@tutorial package/subpackage/tutorial.ext}, was passing subpackage as package * removed $childless_tutorials, no longer needed * fixed wrong start page for package in HTMLframes * added sorting to tutorial order, so the first tutorials are always those of the default package * fixed sorting of packages in the package list for HTML converters * upgraded new_phpdoc.php to HTML_Treemenu-1.1.2, fixed addslashes($nodeObj->link) needed inTreeMenu.php 2002-12-24 Gregory Beaver <[email protected]> * added output of unknown tags to templates. Nothing is done with it, but it allows the option now * fixed subtle bug in Converter::getLink(), if parent::method() is referenced, sometimes the package was not set to the only possibility, and all the other

Page 665 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 713: PhpDocumentor 1.2.2 Manual

package possibilities were not removed, allowing a potential crash 2002-12-23 Gregory Beaver <[email protected]> * added more documentation, starting converting howto to the new manual format * fixed 657934, subtrees not processed in Converter * added parsing of comments/process instructions to tutorial parser. For now, it just ignores them * spruced up the web interface text, it was a bit awkward, added the new converters and templates * fixed output for HTMLframesConverter::formatPkgIndex() * fixed CHM converter so that it looks half-decent * tutorials now work in every converter, every template! 2002-12-22 Gregory Beaver <[email protected]> * fixed {@id}, works 100% now. * fixed a number of warnings in PDF conversion * added {@}inlinetag} converted to {@inlinetag} to allow easy use of "{@inlinetag}" as text, like "{@link}" for example * added documentation for @tutorial/{@tutorial} * fixed bug 657739, need separate categories for tutorial/doc inline tags * fixed bug 657726, @uses pseudo-tag @usedby not working right * fixed bug 657387, parent/child tutorial converted twice * XML:DocBook:peardoc2 is 100%! * tutorials work in every converter except CHM * CHM upgrade is pushed to next release * fixed case issue with README/INSTALL/CHANGELOG parsing 2002-12-21 Gregory Beaver <[email protected]> * added new demo .ini, generates documentation in all formats on phpDocumentor * HTML:default is officially dead! * change HTML:default:* to HTML:frames:*, with big warning message to users * templates have stabilized, so ported DOM templates to frames converter * fixed a few small bugs in HTMLframes Converter * 100% of PDF converter is templatized * implemented all features that HTML converters have in PDF converter * added <pdffunction:funcname arg=$this->varname /> option, to use a $this->pdf variable in a function argument * fixed bug in PDFdefaultConverter::returnSee() * beautified PDF output a bit * tutorials are working in everything except XML, CHM converters * added 8 new templates for PDF Converter 2002-12-20 Gregory Beaver <[email protected]> * stabilized PDFdefaultConverter much more than before * moved more formatting out of PDFdefaultConverter and into templates * added exciting new <pdffunction:funcname [return="capturevarname"][(arg="val"|arg=$capturevarname)...] /> to PDF default converter. Now any Cezpdf function can be called directly from the templates. see new footer.tpl/title_page.tpl for example * implemented feature 651716, find README/INSTALL/CHANGELOG * fixed bug 657041, {@source} not working right * fixed Parser::handleLogicBlock() docblock * fixed bug 653627 staticvar doesn't work * improved sub-tutorial list formatting for other frames templates * converted the rest of the tag spec to the new documentation format * fixed tree generation of tutorials in Converter * fixed HTMLframesConverter tutorial menus * fixed bug 654429, prev/next links not working

Page 666 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 714: PhpDocumentor 1.2.2 Manual

2002-12-19 Gregory Beaver <[email protected]> * fixed problems with PDF Converter output! needed "wb" in Converter::writefile() * fixed phpDocumentor_parse_ini_file(), needed stripcslashes() instead of stripslashes() * PDFdefaultConverter is functional, but output is buggy, needs a lot of work * added type to global variables, inadvertant omission 2002-12-18 Gregory Beaver <[email protected]> * converted documentation for subpackage, var, version to new .pkg docbook format 2002-12-17 Gregory Beaver <[email protected]> * moved debug, fancy_debug, alt. def of array_key_exists to common.inc.php * Began transfer of PDF converter over to using templates * PDF Converter is UNSTABLE at the moment, do not use until bugs are fixed 2002-12-16 Gregory Beaver <[email protected]> * 100% tutorial implementation for HTML:*:*! * fixed subtle bug in IntermediateParser * fixed Prev/Next/Up links * 100% tutorial implementation for all HTML:frames templates! 2002-12-15 Gregory Beaver <[email protected]> * 100% tutorial implementation for HTML:frames:phpedit! added next/prev/up links few small bugs with next/prev, will fix later * hierarchical tutorial implementation complete for phpedit template, frames converter * finished core implementation of hierarchical tutorials in Converter * implemented beginning of hierarchical tutorials in Converter, still need to debug it, but it doesn't give any fatal errors * added tutorials to left frame of phpedit template so we can see what it looks like 2002-12-14 Gregory Beaver <[email protected]> * applied Smarty link fix to frames converter, removed formatUsesList() from both 2002-12-13 Gregory Beaver <[email protected]> * fully implemented all but the non-associated tutorials part of feature 651275, tutorials, for HTML converters * fully implemented feature 651723, @tutorial/{@tutorial} fully work! * fixed simple bug in Converter::getTutorialLink() * removed annoying DIR_SEP has docblock warning in Smarty.class.php * added parsing of <refname> from <refnamediv> as main title of tutorials * added <refnamediv> to both Converters.pkg and phpDocumentor.pkg - didn't realize this is a required tag of refentry! * moved phpDocumentor_parse_ini_file to common.inc.php so web interface can use it * implemented feature 653608, allow user-controlled .ini directory, also allows full path to --useconfig command-line for cases where phpDocumentor is installed by root and used by users with their own config files * fixed accidental @tutorial tag in Converter.inc * revamped returnSee() to rely on {$subdir}, added output filter function for Smarty Converter to allow removal of annoying $local value * fixed Smarty tutorials 2002-12-12 Gregory Beaver <[email protected]> * TODO: HTMLSmartyConverter tutorial writing is more complex, gotta fix it * fixed Converters.pkg. Somehow, it was overwritten with phpDocumentor.pkg * fixed header.tpl in phpedit template to allow inherited vars to work * changed titles of the package-level tutorials Converters.pkg/phpDocumentor.pkg * updated all the other HTMLframesConverter templates to use this new functionality * added small comment to phpdoc.inc, was complaining about page-level docblock in parse * changed PHPEdit tutorial to use tabpanes instead of those annoying + signs

Page 667 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 715: PhpDocumentor 1.2.2 Manual

* fixed Smarty cycle plugin, was adding unnecessary "\n" and screwing up output * fixed bug if multiple tutorials (needed to unset $curtag in XMLpackagePageParser) * fixed warning when parsing a {@tutorial} inline tag * removed accidental {@tutorial} in Errors.inc * fixed tutorial linking, added package page association for HTMLframesConverter * finished class/procedural page-level tutorial association 2002-12-12 Gregory Beaver <[email protected]> * implemented parsing of @tutorial/{@tutorial} and automatic links to class tutorials from the class, and procedural file tutorials. UNTESTED but if there are no @tutorial/{@tutorial} the parse works normally :) * changed format of $tutorials array to match what Converter was expecting. organized now by package/subpackage/tutorial type. 2002-12-11 Gregory Beaver <[email protected]> * fixed significant bug 651837, @see package#element, anotherelement breaks * implemented core of feature 651275, tutorials. Tutorials are parsed, and parserTutorials are passed to the Convert() function, but haven't implemented any of the convertTutorial() functions yet * implemented parserTutorial, parserTutorialInlineTag, but didn't set up parsing for them * added tutorial to the list of allowed tags and inline tags 2002-12-10 Gregory Beaver <[email protected]> * fixed bug 650946, open new window for phpdoc.org link * removed masterdirectory commandline, implemented MUCH better automatic base determination at the advent of file parsing. * removes unintentional duplicate files (if -f filename.ext and -d dir include the same file) 2002-12-09 Gregory Beaver <[email protected]> * added htmlentities to <code></code> in desc * fixed HTMLframesConverter bug in package pages, was outputting into wrong dir for linking * fixed bugs in left_frame.tpl of phpedit template, fixed bugs in HTMLframeConverter::makeLeft() * added sdesc processing to the list of cool items * allow unterminated <p>, now we have 100% javadoc desc compliance :) * added <br> to allowed tags in desc/sdesc * removed need for adv_htmlentities - with new system, Converter::postProcess() is called on all non-objectified strings, so the appropriate Converter function can be applied * fixed nested <ol> and <ul> parsing of descs, plus allow unterminated <li> * fixed silly syntax error introduced in Setup.inc.php 2002-12-08 Gregory Beaver <[email protected]> * Added the last of the skeleton details to the peardoc2 template, time for testing * fixed command-line error in common.inc.php and phpdoc.bat, it should work now * fixed bug in @uses formatUsesList for html converters * fixed extra ] in method.tpl in phpedit template * added Julien Damon's fantastic adaptation of the PHPEdit template to frames converter 2002-12-07 Gregory Beaver <[email protected]> * implemented 645775, line numbers * finished converting phphtmllib, and tweaked all templates plus HTMLframesConverter * fixed bug in default converter introduced by changes to page->name * converted phpdoc.de template over to ne frames converter * fixed mistakes in l0l33t, default * converted l0l33t template over to new frames converter * took the <<< out of HTMLframesConverter, added new blank.tpl to allow customizable startup page 2002-12-06 Gregory Beaver <[email protected]>

Page 668 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 716: PhpDocumentor 1.2.2 Manual

* fixed 641334, no support for <script language="php"> * revised fix for 649646, it was not working for functions with any { } in them * fixed bug 649646, comments not parsed in functions * fixed broken stuff due to move 2002-12-04 Joshua Eichorn <[email protected]> * Basic updates of includes for new direcotry schemes * Boat loads of cvs magic moves to clean up the root directory nothing shows in cvs history but i broke lots * Merged everything from the 1.1.0 branc back to head so if anything is broke i broke it 2002-12-04 Gregory Beaver <[email protected]> * fixed crash on parsing @uses class::method() * partially fixed incorrect linking in HTML converters from @uses list in formatUsesList(), needed $local = true * fixed 648684, links incorrect to global vars and defines in HTMLSmarty * HTMLframesConverter and default template successfully working now 2002-12-02 Gregory Beaver <[email protected]> * ParserData.inc fixed bug 647494 with {@link item, item} * added new Smarty PHP templates from Mark van Reunswolde based on the php website look * added Mark van Reunswolde to the Authors list 2002-12-01 Gregory Beaver <[email protected]> * Began work on new HTMLframesConverter to replace the default converter the Smarty converter will become HTMLnoframesConverter since both converters will be using the Smarty engine. * added create_package.xml.php, a tool to generate the pear package.xml file * added cleanup_for_pear.php, contributed by a user to make the output fit PEAR specs and his own preference for docblock formatting 2002-11-30 Gregory Beaver <[email protected]> * fixed major bug introduced by flexibility :) * made HTMLSmartyConverter much more flexible * fixed 640507, links to constructors broken * fixed 641235, need trim in -f and -d commandline * fixed 646281, {@link e@a descrip} broken in package pages * converted Converter and phpDocumentor package-level docs to new DocBook format * added inline {@id} tag for xml package parser * completed XMPpackagePageParser! * added documentation for {@inheritdoc}, {@id} * added XMLpackagePageParser.inc and PackagePageElements.inc to repository 2002-11-29 Gregory Beaver <[email protected]> * Classes.inc fixed warning on 435 * Errors.inc fixed problem with error output in web interface (<ul> to ul) * phpdoc.php, new_phpdoc.php fixed problem finding config files if running as a symlink in web interface * Converter.inc fixed 645588 - no linking to functions whose name starts with "global" or"function" 2002-11-27 Gregory Beaver <[email protected]> * added docblock's to class_summary.tpl * added a great deal to DocBook converter templates * added new ParserDescCleanup.inc, parses long descriptions into paragraphs, as well as parsing out allowedhtml tags into abstract structures that are automatically converted using an options.ini file in the template directory that adds the proper wrappers for the output format. Very flexible and intuitive 2002-11-24 Gregory Beaver <[email protected]>

Page 669 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 717: PhpDocumentor 1.2.2 Manual

* added mucho to DocBook converter and peardoc2 template. Only need to do global, include, and definetemplates and it's ready to go for PEAR 2002-11-22 Gregory Beaver <[email protected]> * changed namespace things to fix for PEAR 2002-11-20 Gregory Beaver <[email protected]> * implemented feature 623055, support Zend @desc * implemented feature 637920, easy way to extend a converter -o"HTML:Smarty/childofSmarty:template" * implemented feature 637660, parse type|type 2002-11-19 Gregory Beaver <[email protected]> * implemented feature 558118, {@inheritdoc} * implemented feature 577714, have master directory option * implemented feature 634589, @uses 2002-11-18 Gregory Beaver <[email protected]> * implemented feature 562604, docblock templates 2002-11-17 Gregory Beaver <[email protected]> * implemented feature 566942, {@link seeelement description} * implemented feature 569746, make Program_Root a template thing. It's in phpDocumentor.ini * significant improvement in DocBook converter and peardoc2 template * ParserFunction added getIntricateFunctionCall() * Converter added type_adjust() 2002-11-16 Gregory Beaver <[email protected]> * nearly 100% functional DocBook converter for peardoc2 * refined config option - now it is possible to set up phpdoc to run with no command-line options at all! * fixed phpdoc.php, new_phpdoc.php to work with new config option * added config file parsing, new command-line -c --useconfig option * added new Setup.inc.php, moved almost all of phpdoc.inc into there. * changed phpdoc_out to phpDocumentor_out * new_phpdoc.php,phpdoc.php changed to GET interface so people can bookmark a complicated parse, addedXMLDocBook * IntermediateParser.inc fixed mis-naming of bug when a Converter isn't a class * Added phpDocumentor.ini, removing from phpdoc.inc data that should be separate 2002-11-14 Gregory Beaver <[email protected]> * updated documentation to reflect new stuff * implemented feature 564991, auto-links to php manual (also uses PHP_MANUAL# as fake package to link tothe manual) 2002-11-13 Gregory Beaver <[email protected]> * improved {@source} tag * Converter.inc fixed 638128, commandline win32 fails, w/relative path * Converter.inc fixed 638042, two declarations of checkstate() * PDF Converter fixed 637921 * fixed 637928 multiple converters fails * fixed bug if PDEXCEPTIONS is true ---------- Release 1.1.0 ------------------ 2002-11-12 Gregory Beaver <[email protected]> * PDF Converter enhanced <ul></ul> support * PDF Converter added package pages * Parser.inc fixed minor bug in handling of quote data

Page 670 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 718: PhpDocumentor 1.2.2 Manual

2002-11-11 Gregory Beaver <[email protected]> * PDF Converter added <ul></ul> support 2002-11-10 Gregory Beaver <[email protected]> * new_phpdoc.php added replace converter option for convenience * PDF Converter upgraded to pdf-php 009 * PDFdefaultConverter fixed bug in returnSee() * PDFdefaultConverter fixed 597089, page numbering screwy * PDF Converter added linking from table of contents * PDF Converter cleaned up long description formatting * PDF Converter added full alphabetical index 2002-11-7 Gregory Beaver <[email protected]> * new_phpdoc.php,phpdoc.php fixed mistake in the dropdown for Converter choice * Classes.inc fixed 635264 * removed rc2 from all 1.1.0rc2 * Parse.inc fixed warning on 956 * package.xml updated to reflect addition of phphtmllib template * added phphtmllib template 2002-11-7 Joshua Eichorn <[email protected]> * small clean up of documentation for the release 2002-11-7 Gregory Beaver <[email protected]> * fixed 591396 package difficulties * fixed 603668 * Release-1.1.0 added and customized 2002-11-6 Gregory Beaver <[email protected]> * docblock.tpl fixed 634492, all linking broken in Smarty Converter 2002-10-31 Gregory Beaver <[email protected]> * package.xml added new_phpdoc.php, changed date to November (it was August - we're behind folks!) * index.html added link to new_phpdoc.php, now that it works * Parser.inc applied superior fix for 604254 * Parser.inc fixed 631853, sometimes first letter is cut off. was using ltrim($word,' \t') instead ofltrim($word," \t") * Parser.inc fixed 631842, default value of '' is ignored * var.tpl renamed default to var_default * applied fix for weird Smarty error to case where there are no files (just classes) 2001-10-31 Joshua Eichorn <[email protected]> * Io.inc Fixed command line parsing, seems someone else messed it up 2002-10-31 Gregory Beaver <[email protected]> * applied 621416 to method.tpl * fixed 631626 need pre-like stuff * fixed weird Smarty error if there are no classes * fixed 598086 Helvetica not added to archive * fixed 625686 in DOM/default, global_summary.inc.html had typo CONSTANT instead of VARIABLE * fixed 621416 need <br> in include.tpl * fixed 609989 if function has no params, @param tag ignored * fixed 599005 function return no longer shows up. needed to add {$functions[func].function_return in front of {$functions[func].function_call} in function.tpl for the Smarty converter * fixed 598910 Procedural page doc not working in Smarty 2002-10-30 Gregory Beaver <[email protected]> * fixed 604254 multi-line space needs ltrim. Added code in Parser.inc Parser::handleDesc() to trim unnecessarywhite space at line start

Page 671 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 719: PhpDocumentor 1.2.2 Manual

* fixed bug 623050 class tree links in phpdoc.de templates are duds. Also added two template variables to allpages for all templates in HTMLdefaultConverter: cpackage and relloc. cpackage is the current packagename relloc is the relative location of the current file based on package (it's either ../ or ../../ to the base) this can be used to link to files in the web base * bug-570040 added to package tests * fixed it completely! changes to getPath() needed to be in setPath() * changed all ->path to ->getPath(), but the added code still breaks everything. It will remain commenteduntil the author (whoever that is) explains what he was trying to do. * ParserData.inc fixed annoying warnings created - fix is temporary, will do comprehensive fix later. the problem was with parserPage::getPath(), which is not always used when it should be. 2002-08-25 Gregory Beaver <[email protected]> * phpdoc.inc fixed 4.2.0-specific bugs * new_phpdoc.php fixed errors * Io.inc fixed parse error * package.xml added README * new_phpdoc.php stabilized behavior * new_phpdoc.php attempted another solution to bizarre behavior 2002-08-24 Gregory Beaver <[email protected]> * package.xml fixed <> and </> to be <role> and </role> * package.xml added PEAR package.xml file. It's incomplete, will require proofread and edit before release(558 lines!) 2002-08-23 Gregory Beaver <[email protected]> * new_phpdoc.php added mega-enhanced web interface, will be moved to phpdoc.php when approved 2002-08-21 Gregory Beaver <[email protected]> * Parser.inc fixed warning on 1140 if quote_data has never been set * fixed bug 588453, default values in function parameters screw everything up * fixed bug 587737, multi-line function name parsed incorrectly * fixed bug 587733, inherited private methods/vars should not show if parseprivate is off * added test case for bug 587733 * fixed 578143, --customtags not documented (oops) * fixed 576507, first word of @global type firstword is cut off * fixed all of 575532, tags.ignore.html is formatted wrong * fixed 575232, phpdoc.php needs <?php instead of <? 2002-08-13 Dave Viner <[email protected]> * fixed 575232. uses short tag <? instead of <?php * fixed 582360. windows path delimiter returned in ParserData.inc * removed php warnings when run without parameters * fixed display of usage message * error check value of parent directory in Converter.inc 2002-08-09 Joshua Eichorn <[email protected]> * edited README, Authors small changes 2002-06-25 Gregory Beaver <[email protected]> * fixed documentation for @ignore, edited README * fixed 571677, @return type descrip not showing descrip 2002-06-18 Gregory Beaver <[email protected]> * added {@source} tag, can be {@source} for whole function or {@source line line} for excerpt. only works forfunctions * Parser.inc removed old dockeyword handling

Page 672 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 720: PhpDocumentor 1.2.2 Manual

* phpdoc.inc,Parser.inc added @parameter as alias to @param * phpdoc.php added dropdown for converters to help remember their names. Thanks to Tim Gallagher ---------- Release 1.1.0rc2 ------------------ 2002-06-17 Joshua Eichorn <[email protected]> * lots of changes to the default smarty template 2002-06-17 Gregory Beaver <[email protected]> * IntermediateParser.inc, Smarty_Compiler.class.php fixed bug in @ignore 2002-06-17 Roberto Berto <[email protected]> * makedoc.sh New makedoc.sh comments and version 2002-06-15 Gregory Beaver <[email protected]> * Parser.inc fixed small bug if -f filename.php used without path * Prepared for rc2, phpdoc.php, README, howto.html and Release changes * CHMConverter fixed index so that it works 2002-06-14 Gregory Beaver <[email protected]> * CHMConverter added pre-alpha CHM converter based on htmlsmarty converter 2002-06-14 Gregory Beaver <[email protected]> * PDFConverter fixed it up real nice, for pre-alpha, it is somewhat useful * Smarty_Compiler.class.php added @ignore tag to header output for every template * HTMLSmarty fixed stylesheet/image copy * Converter.inc added indenting to writefile() * HTMLSmarty added cache for speedup, fixed warnings * HTMLSmarty fixed left index creation * HTMLSmarty fixed package index listing * HTMLSmarty fixed unnecessary classtrees output * HTMLSmarty fixed header.tpl, sped up left index creation in the process * plugins/, create_example.php fixed @package tags * Parser.inc fixed 568901 totally * Parser.inc fixed handleCR, unfixed 568901 slightly * Converter.inc fixed crash if parent::$el used and the class's parent is not fuond * phpdoc.inc turned off exception checking * Io.inc fixed @global mis-formatting * Parser.inc commented out debug code * ProceduralPages.inc fixed faulty exception-checking code * moved Smarty to phpdoc/ * howto.html,README updated command-line for 1.1 * makedoc.sh fixed small error in $TEMPLATES 2002-06-14 Joshua Eichorn <[email protected]> * howto.html bug# 568901Doc update from Julian Ladisch (julianladisch) * bug-shortdesc.php Short desc test file * Parser.inc Fix for bug #568900 * README fix some grammar * Updated Roadmap 2002-06-13 Roberto Berto <[email protected]> * added makedoc.sh and its documentation inside INSTALL and README 2002-06-13 Gregory Beaver <[email protected]> * finished skeleton HTMLSmartyConverter * started a skeleton HTMLSmartyConverter.inc 2002-06-12 Gregory Beaver <[email protected]> * Converter.inc added cosmetic \n to walk() after converting error log

Page 673 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 721: PhpDocumentor 1.2.2 Manual

* fixed bug 568146, -po broken again * fixed bug 568131 * fixed bugs 568137, 568135 * Parser.inc fixed bug 567455, incorrect short desc recognition if first line has no period and third line does * Converter.inc finished docs * phpDocumentor.html fixed missing " * HTMLdefaultConverter.inc wasn't setting {var_default} in var_detail * Classes.inc some desc comments too long for <pre></pre> 2002-06-11 Gregory Beaver <[email protected]> * Parser.inc fixed 567757, EOF quotes break parsing * Parser.inc fixed 567681, global value needs whitespace * Converter.inc added new function getGlobalValue(), getIncludeValue() which link to documented elements iffound. * IntermediateParser.inc fixed 567683, sorting was screwing up classes again * HTMLdefaultConverter.inc classes were not listing @package, neither were pages * Converter.inc fixed bugs 567652, 567654, 567578 * finished updating inline docs * Parser.inc fixed bug 567059 * HTMLdefaultConverter.inc fixed bug 567090 * HTMLdefaultConverter.inc fixed bug 567504, added {global_link} and {constant_link} to all default templates * HTMLdefaultConverter.inc fixed bug 567105, errors.html totally screwed up 2002-06-10 Gregory Beaver <[email protected]> * IntermediateParser.inc continued documenting 2002-06-09 Gregory Beaver <[email protected]> * HTMLdefaultConverter.inc fixed bug 566655, blank.html not written * IntermediateParser.inc, Converter.inc fixed bug 566600, var/method links awry. Was due to sorting incorrectly * bug-566600.php added test case * all Converters fixed bug 566607, image files not copied. Had to redo args to Converter, add in $templateDir * Parser.inc fixed bug 566659, @param &$arg not working * IntermediateParser.inc nearly finished inline documenting * Classes.inc started inline documenting ---------- Release 1.1.0rc1 ------------------ 2002-06-09 Gregory Beaver <[email protected]> * HTMLdefaultConverter.inc added adv_htmlentitites to docblocks 2002-06-08 Gregory Beaver <[email protected]> * PDFdefaultConverter.inc added convertGlobal() function, wasn't there. * added docs for @ignore, @staticvar * IntermediateParser.inc adding sorting of all elements prior to conversion, shaves another percentage or twooff of execution time * Converter.inc fixed bug 566210 * had no blank.html creation, added it to HTMLdefaultConverter * Parser.inc fixed warnings in functionparam handler * IntermediateParser.inc fixed 566207, crash on parsing sample * Parser.inc fixed 566200, incorrect function parameter parsing * updated tag spec for @staticvar * half-updated template spec for 1.1 * Reworked Converter::Converter() command-line args * Converters.html added package-level docs for Converters package * HTMLdefaultConverter.inc fixed bug in ConvertPackagePage(), wasn't setting target dir correctly * Converter.inc fixed bug in getLink() if explicit # package override used * Parser.inc fixed rest of bug if {@link package#element} is used * Converterhowto.html updated for 1.1rc1 2002-06-07 Gregory Beaver <[email protected]>

Page 674 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 722: PhpDocumentor 1.2.2 Manual

* HTMLdefaultConverter.inc fixed package-level docs output * Added error/warning output into a file * Merged Render into HTMLdefaultConverter * moved adv_htmlentities into Converter.inc * Render.inc removed * DataTypes.inc removed * INSTALL added installation instructions for those who need it * gave up on parsing PEAR. PHP is too unstable at high memory usage * DOM/default/left.html fixed Functions label, was Classes * Errors.inc phpdoc_exception.log is now written to the target directory instead of the phpdoc base, to avoid write permission issues * Classes.inc fixed the last remnant of the old bug in processChild * Errors.inc added new exception for case where a root has a parent in the same class * HTMLdefaultConverter.inc fixed formatting problem with getRootTree() * HTMLdefaultConverter.inc fixed subdirectory error in formatted inherited vars/methods * ParserElements.inc made inherited vars/methods functions non-recursive * ProceduralPages.inc fixed page packaging * Classes.inc fixed class inheritance packaging * IntermediateParser.inc fixed parserData->clean bug, was not being set to false when an element wasencountered 2002-06-06 Gregory Beaver <[email protected]> * Classes.inc fixed very old bug in processChild, incorrect inheritance when diff file, diff package, 1 possibleparent test was testing if there is 1 possible *child* instead of parent * Converter.inc fixed bug in getSortedClassTreeFromClass() if there was a parent in another package or notfound * IntermediateParser.inc fixed usage of first docblock @package * HTMLdefaultConverter.inc, ParserElement.inc fixed bug in individual class tree generation * ProceduralPages.inc fixed major bug in replaceElement(), was not searching the arrays for the right element * Converter.inc, HTMLdefaultConverter.inc made root tree generation non-recursive * ParserElements.inc added cache to parserClass::getInheritedMethods()/getInheritedVars(), instead ofrecursion fix, will fix later 2002-06-05 Gregory Beaver <[email protected]> * ParserElement.inc changed parserClass::getParentClassTree() to be non-recursive * added Exception tracking for hard bugs that crash php * Errors.inc documented all the global error message arrays 2002-06-04 Gregory Beaver <[email protected]> * Render.inc fixed warning on 931 * Converter.inc removed recursion from getLink() * IntermediateParser.inc fixed 564681, no docblocks, no packages.html output * fixed 564264, SDesc not doing {@link} right * ParserElements.inc made inheritance of subpackage from classes within page work inparserClass::setParent() * HTMLdefaultConverter.inc fixed bug 564630, need $local = false * bug-542586.php added @package tests to new classes * HTML/default/default.inc moved to HTML/default/HTMLdefaultConverter.inc * PDF/default/default.inc moved to PDF/default/PDFdefaultConverter.inc * IntermediateParser.inc changed addConverter() to reflect name changes above * Converter.inc fixed bug that was putting procedural pages in package indexes by name instead of by file * ProceduralPages.inc made inheritance of subpackage from classes within page work * Classes.inc fixed subpackage inheritance * Converter.inc fixed 563992, warning on line 861 * Classes.inc fixed 564135, @access private not working right * bug-542586.php added testing for bug 564135 2002-06-03 Gregory Beaver <[email protected]>

Page 675 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 723: PhpDocumentor 1.2.2 Manual

* Parser.inc fixed bug 564173, global var still looked for * HTML/default/default.inc fixed minor warning on lines 804 and 805 * HTML/default/default.inc made auto-include linking work for different packages * Converter.inc fixed 563995, li_0, needed uasort($this->*_elements) instead of usort * Converter.inc fixed 564115, $par set to 0 in Converter::getLink() * Converter::getLink() improved efficiency * Converter.inc fixed 564108, crash in php when package#element passed to getLink() and package doesn'texist in the documentation * Io.inc changed "cvs datei" to CVS file [EXPERIMENTAL]. CVS parsing kacks on branches * changed --converters to --output, removed --templatedir 2002-06-02 Gregory Beaver <[email protected]> * added ParserElements.inc, containing parserElement and descendants * added ParserDocBlock.inc, containing all DocBlock elements * parserLinkInlineTag added "mailto:*" as valid inline link * Parser.inc implemented feature 559339, add abstract link for email in @author tag (using parserInlineLinkTaginstead of new parserEmail tag) * implemented feature 560892, link to classes in @var, @return and @param type if found * implemented parent::* processing * fully implemented feature 562650, parent::* linking to overridden methods * implemented feature 561081, better indexing * fixed a few warnings introduced by feature changes * Parser.inc implemented feature 560375, need whitespace * implemented feature 553599, static variables should be documentable * implemented feature 558757, add Functions to left.html * HTMLConverter.inc significantly reduced memory impact and increased speed as a result * Render.inc removed PreOutput(), Output() now clears template memory when finished * Changed all references to PHPDocumentor to phpDocumentor for consistency * re-arranged Converters for new usage in path: Converters/outputformat (html/pdf/etc.)/name/name.inc * HTMLConverter.inc fixed bug where class trees were not being written * HTMLConverter.inc, Render.inc fixed bug 563729 * Parser.inc fixed bug 562653, crash on empty page with unterminated {@link} 2002-06-01 Gregory Beaver <[email protected]> * added documentation of inter-package class conflicts * HTMLConverter.inc, Converter.inc reorganized indexing, added informational output * HTMLConverter.inc changed all get*Link() methods to have same format at Converter::get*Link * Converter.inc added $text as a dummy parameter to all get*Link methods * implemented all of feature 560888, document name conflicts * create_examples.php added inline documentation * Converter.inc added several functions to generate abstract class trees and sort them * HTMLConverter.inc changed getRootTree to work with the abstract class tree, fixing bug 561082 * HTMLConverter.inc, Render.inc fixed bug 561093, no links to other packages in package element index * templates fixed <a name="#top"></a> * Io.inc implemented Jason Sweat's fix for bug 562057, fixes for directory permissions * Io.inc fixed bug 562252, ignore should be recursive for directories * Io.inc fixed bug 560603, unknown command-line options should raise an error * Render.inc added blank {function_conflicts} to methods (was missing) * fully implemented auto-linking to other packages, feature 560026 * implemented feature 560891, make @param output type $varname instead of $varname type 2002-05-31 Gregory Beaver <[email protected]> * ParserData.inc implemented feature request 562250, no die on illegal package name, set to default andcontinue parsing * Parser.inc fixed bug 561392, warning on line 874 * ProceduralPages.inc fixed bug 561394, fatal error on line 329 * Parser.inc fixed bug 562997, class being parsed out of quote in php code * Parser.inc fixed bug 563005, global handler broken

Page 676 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 724: PhpDocumentor 1.2.2 Manual

* fixed bug 561396, many pages not in left.html * Converter.inc moved sorting of indexes from HTMLConverter.inc * tests/ removed name conflicts with function test() and function test2() * fixed parse private, default package name, and package output. All three were intertwined, and all three nowwork the way they should 2002-05-27 Gregory Beaver <[email protected]> * IntermediateParser.inc moved all element indexing to Converter where it belongs. * Classes.inc, ProceduralPages.inc moved all indexing to fullpath for conflicts, added full conflict handling * phpdoc.inc added @ignore tag for handling conflicts * Errors.inc added several errors relating to name conflicts * IntermediateParser.inc moved all handling of procedural elements to ProceduralPages.inc, much cleaner code * ParserData.inc adjusted parserClass functions to work with fullpath instead of files * ProceduralPages.inc Works now (mostly) * If a procedural page has 1 package used by classes in it, it will inherit the package now * DataTypes.inc fixed bug 562073, adv_htmlentities should use html_specialchars * DataTypes.inc fixed bug in DataDocBlock::setGlobal() causing blank @global tag in output for every function * phpdoc.inc documented global variables 2002-05-26 Gregory Beaver <[email protected]> * added @global for functions * ParserData.inc added getFullPath() function to parserPage, for name conflict resolution * ProceduralPage.inc added intermediary structure similar to Classes.inc 2002-05-25 Gregory Beaver <[email protected]> * Io.inc,phpdoc.inc,Parser.inc added feature 556757, JavaDoc-compliant description * phpdoc.php updated for new features * Io.inc,phpdoc.inc added feature 550308, custom tags * Io.inc fixed bug 560604, phpdoc -h cuts off name in --defaultpackagename * updated all docs for global variable, changed version to 1.1, since we started version 1.1 changes * tags.param.html fixed error in documentation, had reference to @return which was incorrect * finished addition of @global for variable definition, added to all templates * added parsing of global variables, only to l0l33t for now. extensive changes to most files * l0l33t/page.html fixed bug 560532, was missing inclusion of page-level docblock * ParserData.inc fixed crash * Classes.inc fixed bug 560598 by adding error to Errors.inc * Parser.inc fixed bug 560595, fail on invalid docblock with @ * Parser.inc fixed bug 560578, @author test @ not working * IntermediateParser.inc, ParserData.inc, Errors.inc added feature 560586 ---------- Release 1.0.0 ------------------ vim: set expandtab:

FAQ

################################################################################ phpDocumentor Frequently Asked Questions ################################################################################ Introduction ################################################################################ Before we start with questions and their answers, make sure to read the documentation *thoroughly* found at http://www.phpdoc.org/manual.php. The

Page 677 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 725: PhpDocumentor 1.2.2 Manual

complexity of phpDocumentor can be a bit impenetrable until you understand the logic behind it. If you have read the documentation thoroughly, and have read this FAQ and you are still lost, please go directly to the bug database at http://sourceforge.net/tracker/?group_id=11194&atid=111194 and read through the open bugs. If you don't find the solution to your problem (or proof that it at least is not your fault), then go to the help forum and post a help message at http://sourceforge.net/forum/forum.php?forum_id=35065. ################################################################################ All Questions (Table of Contents) ################################################################################ Installation Q: [UNIX ONLY] When I run phpdoc from outside its directory, it doesn't work! Q: [PEAR ONLY] I ran pear install PhpDocumentor, but running 'phpdoc' doesn't work! Documentation Errors Q: I keep getting an illegal package tag error for the first DocBlock in a file, isn't this a page-level DocBlock? Q: I keep getting a warning that there is no @package tag in file xxx.php, but there is a @package tag in the class definition, doesn't this apply to the file? Feature Requests Q: Can you implement the @example tag inline so that I can put PHP source code examples directly in DocBlocks? Crash/Segfaults Q: phpDocumentor crashes if I use __FUNCTION__!!! ################################################################################ Installation ################################################################################ All old FAQ's for installation have been fixed in version 1.2.2, please open a bug if you continue to have these problems ################################################################################ Documentation Errors ################################################################################ Q: I keep getting an illegal package tag error for the first DocBlock in a file, isn't this a page-level DocBlock? --- ---[[UPDATE]] ---VERSION 1.2.2 has a different page-level docblock recognition algorithm ---Now, the first docblock in a file is a page-level docblock if it contains ---a @package tag. --- A: Please read the documentation very carefully. A page-level DocBlock does occur at the start of a file, but the first DocBlock is not always a page-level DocBlock! Why is this? Very often, you will want to document the entire page, or describe it (this page contains functions for blah), and also document the first item in a page separately. An example: <?php /** * This file contains all foobar functions and defines * @package mypackage

Page 678 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 726: PhpDocumentor 1.2.2 Manual

*/ /** * controls parsing of bar information */ define('parse_bar',true); ?> The page has its own information, and the define has its own information. An example of what not to do: <?php /** * This file contains all foobar functions and defines * @package mypackage */ define('parse_bar',true); ?> Here, the DocBlock belongs to the define and not to the page! phpDocumentor can successfully parse this DocBlock, but it will apply the comment to the documentation of define('parse_bar',true); and not to the page. Therefore, it warns you that your @package tag will be ignored because defines may not contain a @package tag. Q: I keep getting a warning that there is no @package tag in file xxx.php, but there is a @package tag in the class definition, doesn't this apply to the file? A: No. this example does not have a page-level DocBlock: <?php /** * This class is in package mypackage * @package mypackage */ class in_mypackage {...} ?> phpDocumentor therefore assumes the page-level package is the same as the class package, mypackage. This is fine in most cases, but if multiple classes are in the same file with different packages, as in: <?php /** * This class is in package mypackage * @package mypackage */ class in_mypackage {...} /** * This class is in package anotherpackage * @package anotherpackage */ class in_anotherpackage {...} ?> There is no way to determine which package the page should belong to, and phpDocumentor will automatically put it in the default package. This can cause incredible headaches debugging, and so we have added a warning in the 1.2.0 series that informs you if the package is inferred by phpDocumentor.

Page 679 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 727: PhpDocumentor 1.2.2 Manual

To fix this warning, simply place a page-level DocBlock with a @package tag like: <?php /** * This file contains two packages * @package filepackage */ /** * This class is in package mypackage * @package mypackage */ class in_mypackage {...} /** * This class is in package anotherpackage * @package anotherpackage */ class in_anotherpackage {...} ?> ################################################################################ Feature Requests ################################################################################ Q: Can you implement the @example tag inline so that I can put PHP source code examples directly in DocBlocks? A: This is implemented using the HTML <code></code> tags as in: /** * Short description * * Start of long description, here is a code example: * <code> * $my_phpcode = "easy to explain"; * </code> * More text * <code> * define('morecode',true); * </code> */ ################################################################################ Crash/Segfaults ################################################################################ Q: phpDocumentor crashes if I use __FUNCTION__!!! A: This is caused by a known bug in all PHP versions prior to 4.3.2. It was fixed in PHP 4.3.2RC1, you must upgrade to PHP 4.3.2 if you use __FUNCTION__ in code that you wish to document (sorry!) or apply the bugfix patch to the tokenizer extension and recompile php (see the php.internals archive at php.net for help)

INSTALL

$Id: INSTALL,v 1.5.2.1 2003/07/30 00:39:37 CelloG Exp $

Page 680 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 728: PhpDocumentor 1.2.2 Manual

phpDocumentor Installation instructions --------------------------------------- phpDocumentor is very easy to install. The hardest part is installing PHP and possibly a Web Server, if you plan to use the web interface phpdoc.php To install phpDocumentor, use a compression program to decompress the contents to a directory, preserving internal directory structure of the archive. If you wish to use the web interface, you must unzip the archive into a subdirectory accessible by the web server. PEAR installation ----------------- This is by far the easiest way to install phpDocumentor. Included in this release is a package.xml file. Simply run pear install /path/to/phpDocumentor-1.2.2/package.xml on Windows: pear install C:\path\to\phpDocumentor-1.2.2\package.xml If you have an existing install, pear uninstall PhpDocumentor first. PhpDocumentor contains a new filerole, publicweb, that requires the latest version of the pear package, so be sure to pear upgrade PEAR before attmempting to install To use the web interface, browse to <publicwebdir>\PhpDocumentor\index.html Command-line interface installation and usage instructions ---------------------------------------------------------- To use phpDocumentor as a command-line interface, you need to install PHP version 4.1.0 or greater. *IMPORTANT* any version of PHP below 4.1.0 will not work with version 1.2.0 of phpDocumentor!!! To use the new tokenizer-based parser, you must have php 4.3.0 Windows ------- You need the cli version of PHP (php-cli.exe or cli/php.exe in 4.3.0). Either run phpDocumentor from the directory that PHP resides in, or put php.exe in your DOS PATH enviroment variable. The simplest usage of phpDocumentor is: C:\>php.exe "C:\Path\To\phpdoc" -t targetdir -o HTML:default:default -d parsedir where targetdir is the directory you wish phpDocumentor to create output, and parsedir is the directory you wish to parse. Unix ---- Make sure that the cgi version of PHP is in your path. The simplest usage of phpDocumentor is: phpdoc -t targetdir -o HTML:default:default -d parsedir You can use makedoc.sh. Simple copy it to your project path and edit it. When you wish to (re)build your project's documentation, simple run it.

Page 681 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 729: PhpDocumentor 1.2.2 Manual

Web interface installation and usage instructions ------------------------------------------------- To use phpDocumentor as a web interface, you need to install a Web server and configure it, as well as install PHP version 4.1.0 or greater. Consult the documentation of your webserver and of PHP for installation support. Windows and Unix ---------------- open a web browser and browse to phpdoc.php at the location that you set up. Instructions are in the web interface. vim: set expandtab :

README

$Id: README,v 1.49.2.4 2003/07/30 00:39:37 CelloG Exp $ ################################################################################ phpDocumentor ################################################################################ Installation ################################################################################ Installation for phpDocumentor is as simple as installing PHP and a web server. If you need help installing a webserver or php, refer to the documentation that comes with the webserver or with php. All users with PEAR should either install this version directly from the package.xml file included in the distribution, or install via pear install PhpDocumentor. The command-line interface "phpdoc" will be in the path, you can use it immediately on both windows and unix. The web interface will be in a subdirectory of your document root, as soon as PEAR releases a version with support for the role="publicweb" attribute. Be sure to "pear config-set publicweb_dir /path/to/my/htdocs" To use phpDocumentor as a command-line tool in *nix-based systems, simply run the phpdoc script. In windows, run "c:\php\php.exe phpdoc" where C:\php is the path to the cgi version of php. The phpdoc command-line interface will not run with the ISAPI module of PHP. To see the command line options, use phpdoc -h or read at the bottom of this README. There is a BASH shell script that you can put inside your project that can save time writing command-line options of phpdoc. Simply copy makedoc.sh to your project path and edit it. When you wish to rebuild the documentation, run it again. To use phpDocumentor's web interface, install the files into a subdirectory of your document root (read the webserver's documentation for more information if you don't understand how to install into a subdirectory of your document root). Then, browse to the web page as you would to any other web page. If you encounter problems, make sure that the web server has write access permissions to the output directory that you choose. Again, your web server documentation has detailed information on how to do this. The command-line interface will not have problems

Page 682 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 730: PhpDocumentor 1.2.2 Manual

with access. If you need more detailed help, check out INSTALL ################################################################################ Release Notes ################################################################################ Release notes for the newest version are in Release-1.2.2 1.2.2 is out, a STABLE bugfix release To learn howto write PHPDoc-style documentation run phpDocumentor on itself, with ./phpdoc -c makedocs. Before you do, modify users/makedocs.ini to contain the proper path values If you find a bug please post it at: http://sourceforge.net/tracker/?func=add&group_id=11194&atid=111194 ################################################################################ General Notes ################################################################################ phpDocumentor is hosted at phpdoc.org, with downloads and mailing list through sourceforge.net webpage: http://phpdoc.org/ documentation: http://phpdoc.org/manual.php mirror: http://phpdocu.sourceforge.net projectpage: http://sourceforge.net/projects/phpdocu For a list of people who have helped work on this project please read the Authors file phpDocumentor 1.2.2 is released under the PHP License version 3.0, text is in PHPLICENSE.txt ################################################################################ Feature Notes ################################################################################ phpDocumentor is a JavaDoc-like automatic documentation generator for PHP written in PHP. It is the most versatile tool for documenting PHP. For users new to phpDocumentor, phpDocumentor uses an event-driven parser and intermediary data structures that allow it to perform at a level other automatic documentors for PHP cannot achieve: --parsing any php file, with multiple classes and functions in the same file --fully compliant with even the most esoteric php syntax ($string = <<< EOF, for example) --ability to generate multiple output formats --extremely fast parsing --error/warnings by line number and file to allow for debugging of documentation tags --multiple output templates to easily customize the look of generated documentation --extensive documentation of the package, including a detailed specification for tags and templates --PHP License

Page 683 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 731: PhpDocumentor 1.2.2 Manual

New in version 1.2.2: --PDF converter is stable --CHM converter is stable --XML:DocBook/peardoc2 is stable New in version 1.2: --tutorials: user-level documentation can be linked to from API documentation, including at the sub-section level. --Completely re-worked manual at http://www.phpdoc.org/docs --HTML:default has been replaced by HTML:frames, and all of the templates overhauled by Marco von Ballmoos. Several new templates are available --XML:DocBook/peardoc2 converter for PEAR authors --PDF converter is beta --CHM converter is beta --much more stable than version 1.1 --source code highlighting and cross-referencing --many new features, see the manual If something is missing from this list make sure sure to file a feature request on sourceforge http://sourceforge.net/tracker/?func=add&group_id=11194&atid=361194 If you want to help code that new feature and get it just right, please let us know. Any help is greatly appreciated, just contact the phpDocumentor team for information on getting started. phpDocumentor needs php 4.1.0 or greater, but you'll see the best performance in the newest version. The recommended version for 1.2.0rc2 is 4.3.0+. Performance is at least 30-50% faster with PHP 4.3.0 ################################################################################ Command Line notes ################################################################################ Read the documentation at http://www.phpdoc.org/docs for the most up-to-date command-line information. You can also generate documentation from the source using: phpdoc -c makedocs run this command from the installation directory, and make sure you have full write and directory creation permissions or it will not work Generated documentation is accessible via Documentation/new/index.html ################################################################################ if you run phpdoc and get : bash: ./phpdoc: No such file or directory Then you haven't installed the cgi version of php goto your php src dir and try make clean ./configure make make install

Page 684 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 732: PhpDocumentor 1.2.2 Manual

phpdoc should work now If your using php 4.2.0 or higher you will want to use the cli version instead of the cgi. Checkout php.net for details on these changes ################################################################################ Web Interface notes ################################################################################ Put phpdoc.php together with the *.inc files someplace on your webserver. NEVER USE THE WEB INTERFACE ON A PRODUCTION WEBSERVER. Allowing your server to write files to disk is a serious security risk, and phpDocumentor is not designed to work on insecure systems. Setup php on a development machine that has a firewall or no internet connection, and run phpDocumentor from there. Make sure you webserver can write to where ever you specify as a target or you will get lots of errors ################################################################################ Thanks ################################################################################ Thanks to Sam Blum for his assistance with @example and other enhancements Thanks to William K. Hardeman for his HTML:Smarty:HandS design Thanks to Marco von Ballmoos for transforming the HTML:frames converter and templates into a magnificent work of art Thanks to Andrew Eddie for docbuilder and the CHM Converter enhancements Thanks to Darren Cook for suggesting exciting new features, and making sure that they worked when implemented Thanks to Marko Kaening, Dan Convissor for policing the source and finding bugs that would have otherwise gone undetected Thanks to Juan Pablo Morales for the web interface. Thanks to whoever sent me the patch to make phpdocumentor work better in NT I have your diff and patched the program but i seem to have lost your name if you send it to me i'll add it to the Authors file Thanks to Florian Clever for the newest set of win32 patches they seem to have fixed the last of the problems. Thanks to EVERYONE who has provided ideas and input, without you, phpDocumentor would be nothing ################################################################################ ################################################################################ if you have any questions please email joshua eichorn [email protected] gregory beaver [email protected] vim: set expandtab:

Page 685 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 733: PhpDocumentor 1.2.2 Manual

Appendix C - Source Code

Page 686 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 734: PhpDocumentor 1.2.2 Manual

Package tests

Page 687 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 735: PhpDocumentor 1.2.2 Manual

File Source for builder.php

Documentation for this file is available at builder.php

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">2 <?php3 /**4 * Advanced Web Interface to phpDocumentor5 * @see phpdoc.php6 * @package phpDocumentor7 * @filesource8 */9 //10 // +------------------------------------------------------------------------+11 // | phpDocumentor :: docBuilder Web Interface |12 // +------------------------------------------------------------------------+13 // | Copyright (c) 2003 Andrew Eddie, Greg Beaver |14 // +------------------------------------------------------------------------+15 // | This source file is subject to version 3.00 of the PHP License, |16 // | that is available at http://www.php.net/license/3_0.txt. |17 // | If you did not receive a copy of the PHP license and are unable to |18 // | obtain it through the world-wide-web, please send a note to |19 // | [email protected] so we can mail you a copy immediately. |20 // +------------------------------------------------------------------------+21 //22 23 $root_dir = dirname(dirname(__FILE__));24 25 if (!function_exists('version_compare'))26 {27 print "phpDocumentor requires PHP version 4.1.0 or greater to function" ;28 exit;29 }30 31 // set up include path so we can find all files, no matter what32 $GLOBALS['_phpDocumentor_install_dir'] = dirname(dirname(realpath(__FILE__)));33 // add my directory to the include path, and make it first, should fix any errors34 if (substr(PHP_OS, 0, 3) == 'WIN')35 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].';'.ini_get('include_path'));36 else37 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].':'.ini_get('include_path'));38 39 /**40 * common file information41 */42 include_once(" $root_dir/phpDocumentor/common.inc.php");43 44 // find the .ini directory by parsing phpDocumentor.ini and extracting_phpDocumentor_options[userdir]45 $ini = phpDocumentor_parse_ini_file($_phpDocumentor_install_dir . PATH_DELIMITER .'phpDocumentor.ini', true);46 if (isset($ini['_phpDocumentor_options']['userdir']))47 $configdir = $ini['_phpDocumentor_options']['userdir'];48 else49 $configdir = $_phpDocumentor_install_dir . '/user';50 51 // allow the user to change this at runtime52 if (!empty($_REQUEST['altuserdir'])) $configdir = $_REQUEST['altuserdir'];53 ?>54 <html>55 <head>56 <title>57 output: docbuilder - phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?> doc generationinformation58 </title>59 <style type="text/css">60 body, td, th {61 font-family: verdana,sans-serif;62 font-size: 8pt;63 }64 </style>

Page 688 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 736: PhpDocumentor 1.2.2 Manual

65 66 </head>67 <body bgcolor="#e0e0e0" text="#000000" topmargin="0"leftmargin="0" marginheight="0" marginwidth="0">68 69 <?php70 // Find out if we are submitting and if we are, send it71 // This code originally by Joshua Eichorn on phpdoc.php72 //73 if (isset($_GET['dataform']) && empty( $_REQUEST['altuserdir'])) {74 foreach ($_GET as $k=> $v) {75 if (strpos( $k, 'setting_' ) === 0) {76 $_GET['setting'][substr( $k, 8 )] = $v;77 }78 }79 80 echo "<strong>Parsing Files ...</strong>" ;81 flush();82 echo "<pre>\n" ;83 /** phpdoc.inc */83 84 include(" $root_dir/phpDocumentor/phpdoc.inc");85 echo "</pre>\n" ;86 echo "<h1>Operation Completed!!</h1>" ;87 } else {88 echo "whoops!" ;89 }90 ?>

Page 689 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 737: PhpDocumentor 1.2.2 Manual

File Source for config.php

Documentation for this file is available at config.php

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">2 <?php3 /**4 * Advanced Web Interface to phpDocumentor5 * @see phpdoc.php6 * @package phpDocumentor7 * @filesource8 */9 //10 // +------------------------------------------------------------------------+11 // | phpDocumentor :: docBuilder Web Interface |12 // +------------------------------------------------------------------------+13 // | Copyright (c) 2003 Andrew Eddie, Greg Beaver |14 // +------------------------------------------------------------------------+15 // | This source file is subject to version 3.00 of the PHP License, |16 // | that is available at http://www.php.net/license/3_0.txt. |17 // | If you did not receive a copy of the PHP license and are unable to |18 // | obtain it through the world-wide-web, please send a note to |19 // | [email protected] so we can mail you a copy immediately. |20 // +------------------------------------------------------------------------+21 //22 23 $root_dir = dirname(dirname(__FILE__));24 25 if (!function_exists( 'version_compare' )) {26 print "phpDocumentor requires PHP version 4.1.0 or greater to function" ;27 exit;28 }29 30 // set up include path so we can find all files, no matter what31 $GLOBALS['_phpDocumentor_install_dir'] = dirname(dirname( realpath( __FILE__ ) ));32 // add my directory to the include path, and make it first, should fix any errors33 if (substr(PHP_OS, 0, 3) == 'WIN') {34 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].';'.ini_get('include_path'));35 } else {36 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].':'.ini_get('include_path'));37 }38 39 /**40 * common file information41 */42 include_once(" $root_dir/phpDocumentor/common.inc.php");43 include_once(" $root_dir/docbuilder/includes/utilities.php" );44 45 // find the .ini directory by parsing phpDocumentor.ini and extracting_phpDocumentor_options[userdir]46 $ini = phpDocumentor_parse_ini_file($_phpDocumentor_install_dir . PATH_DELIMITER .'phpDocumentor.ini', true);47 if (isset($ini['_phpDocumentor_options']['userdir'])) {48 $configdir = $ini['_phpDocumentor_options']['userdir'];49 } else {50 $configdir = $_phpDocumentor_install_dir . '/user';51 }52 53 // allow the user to change this at runtime54 if (!empty( $_REQUEST['altuserdir'] )) {55 $configdir = $_REQUEST['altuserdir'];56 }57 58 // assign the available converters59 $converters = array(60 "HTML:frames:default" => 'HTML:frames:default',61 "HTML:frames:earthli" => 'HTML:frames:earthli',62 "HTML:frames:l0l33t" => 'HTML:frames:l0l33t',63 "HTML:frames:phpdoc.de" => 'HTML:frames:phpdoc.de',64 "HTML:frames:phphtmllib" => 'HTML:frames:phphtmllib',65 "HTML:frames:phpedit" => 'HTML:frames:phpedit',

Page 690 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 738: PhpDocumentor 1.2.2 Manual

66 "HTML:frames:DOM/default" => 'HTML:frames:DOM/default',67 "HTML:frames:DOM/earthli" => 'HTML:frames:DOM/earthli',68 "HTML:frames:DOM/l0l33t" => 'HTML:frames:DOM/l0l33t',69 "HTML:frames:DOM/phpdoc.de" => 'HTML:frames:DOM/phpdoc.de',70 "HTML:frames:DOM/phphtmllib" => 'HTML:frames:DOM/phphtmllib',71 "HTML:Smarty:default" => 'HTML:Smarty:default',72 "HTML:Smarty:HandS" => 'HTML:Smarty:HandS',73 "HTML:Smarty:PHP" => 'HTML:Smarty:PHP',74 "PDF:default:default" => 'PDF:default:default',75 "CHM:default:default" => 'CHM:default:default',76 "XML:DocBook/peardoc2:default" => 'XML:DocBook/peardoc2:default'77 );78 79 // compile a list of available screen shots80 $convScreenShots = array();81 82 $path = 'images/';83 if ($dir = opendir($path)) {84 while (($file = readdir( $dir )) !== false) { 85 if ($file != '.' && $file != '..') {86 if (!is_dir( $path . $file )) {87 if (strpos( $file, 'ss_' ) === 0) {88 $key = substr( $file, 3 );89 $key = str_replace( '_', ':', $key );90 $key = str_replace( '-', '/', $key );91 $key = str_replace( '.png', '', $key );92 $convScreenShots[$key] = $file;93 }94 }95 }96 }97 }98 99 ?>100 <html>101 <head>102 <title>103 Form to submit to phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?>104 </title>105 <style type="text/css">106 body, td, th {107 font-family: verdana,sans-serif;108 font-size: 9pt;109 }110 .text {111 font-family: verdana,sans-serif;112 font-size: 9pt;113 border: solid 1px #000000;114 }115 .small {116 font-size: 7pt;117 }118 </style>119 120 <script src="includes/tabpane.js" language="JavaScript"type="text/javascript"></script>121 <link id="webfx-tab-style-sheet" type="text/css"rel="stylesheet" href="includes/tab.webfx.css" />122 123 <script type="text/javascript" language="Javascript">124 /**125 Creates some global variables126 */127 function initializate() {128 //129 //The "platform independent" newLine130 //131 //Taken from http://developer.netscape.com/docs/manuals/communicator/jsref/brow1.htm#1010426132 if (navigator.appVersion.lastIndexOf('Win') != -1) {133 $pathdelim="\\";134 $newLine="\r\n";135 } else {136 $newLine="\n";137 $pathdelim="/";138 }139 }140 141 /**Adds the contents of the help box as a directory142 */143 function addDirectory($object) {

Page 691 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 739: PhpDocumentor 1.2.2 Manual

144 //$a = document.helpForm.fileName.value;145 $a = parent.ActionFrame.document.actionFrm.fileName.value;146 $a = myReplace( $a, '\\\\', '\\' );147 if ($a[$a.length - 1] == $pathdelim) {148 $a = $a.substring(0, $a.length - 1);149 }150 if ($a.lastIndexOf('.') > 0) {151 $a = $a.substring(0,$a.lastIndexOf($pathdelim));152 }153 $object.value = prepareString($object.value)+$a;154 }155 /**Adds the contents of the converter box to the converters list156 */157 function addConverter($object) {158 $object.value = prepareString($object.value)+document.dataForm.ConverterSetting.value;159 }160 /**Replaces the converters list with the contents of the converter box161 */162 function replaceConverter($object) {163 $object.value = document.dataForm.ConverterSetting.value;164 }165 /**Adds the contents of the help box as a file to the given control166 */167 function addFile($object) {168 //$a = document.helpForm.fileName.value;169 $a = parent.ActionFrame.document.actionFrm.fileName.value;170 $a = myReplace($a,'\\\\','\\');171 $object.value = prepareString($object.value)+$a;172 }173 /**Takes a given string and leaves it ready to add a new string174 That is, puts the comma and the new line if needed175 */176 function prepareString($myString) {177 //First verify that a comma is not at the end178 if($myString.lastIndexOf(",") >= $myString.length-2) {179 //We have a comma at the end180 return $myString;181 }182 if($myString.length > 0) {183 $myString+=","+$newLine;184 }185 return $myString;186 }187 /**Do the validation needed before sending the from and return a truth value indicating if the formcan be sent188 */189 function validate() {190 //Take out all newLines and change them by nothing191 //This could be done by using javascript function's replacebut that was implemented only untilNavigator 4.0 and so it is better to use more backward compatible functions like substr192 document.dataForm.elements[0].value= stripNewLines(document.dataForm.elements[0].value);193 document.dataForm.elements[1].value= stripNewLines(document.dataForm.elements[1].value);194 document.dataForm.elements[2].value= stripNewLines(document.dataForm.elements[2].value);195 document.dataForm.elements[3].value= stripNewLines(document.dataForm.elements[3].value);196 document.dataForm.elements[4].value= stripNewLines(document.dataForm.elements[4].value);197 document.dataForm.elements[5].value= stripNewLines(document.dataForm.elements[5].value);198 document.dataForm.elements[6].value= stripNewLines(document.dataForm.elements[6].value);199 document.dataForm.elements[7].value= stripNewLines(document.dataForm.elements[7].value);200 //By returning true we are allowing the form to be submitted201 return true;202 }203 /**Takes a string and removes all the ocurrences of new lines204 Could have been implemented a lot easier with replace but it's not very backwards compatible205 */206 function stripNewLines( $myString ) {207 return myReplace($myString,$newLine,'');208 }209 210 function myReplace($string,$text,$by) {211 // Replaces text with by in string212 var $strLength = $string.length, $txtLength = $text.length;213 if (($strLength == 0) || ($txtLength == 0)) {214 return $string;215 }216 var $i = $string.indexOf($text);217 if ((!$i) && ($text != $string.substring(0,$txtLength))) {218 return $string;219 }220 if ($i == -1) {221 return $string;

Page 692 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 740: PhpDocumentor 1.2.2 Manual

222 }223 var $newstr = $string.substring(0,$i) + $by;224 if ($i+$txtLength < $strLength) {225 $newstr += myReplace($string.substring($i+$txtLength,$strLength),$text,$by);226 }227 return $newstr;228 }229 230 var screenShots = new Array();231 <?php232 $temp = array();233 foreach ($converters as $k=> $v) {234 if (array_key_exists( $k, $convScreenShots )) {235 echo "\n screenShots['$k'] = '{$convScreenShots[$k]}'";236 } else {237 echo "\n screenShots['$k'] = ''";238 }239 }240 ?>241 242 243 /** Swaps the converted screen shot image244 */245 function swapImage( key ) {246 document.screenshot.src = 'images/' + screenShots[key];247 }248 249 </script>250 251 </head>252 253 <body bgcolor="#ffffff" onload="javascript:initializate()"topmargin="0" leftmargin="0" marginheight="0" marginwidth="0">254 255 256 <div class="tab-pane" id="tabPane1">257 <script type="text/javascript">258 var tp1 = new WebFXTabPane( document.getElementById( "tabPane1" ));259 </script>260 261 <div class="tab-page" id="tab_intro">262 <h2 class="tab">Introduction</h2>263 Welcome to <b>docBuilder</b>.264 <p>This is the new web-interface for running, in our opinion, the best in-codedocumentation compiler there is: <b>phpDocumentor</b>.</p>265 <p>What's new in this release? Heaps of things, but here are the headlines:</p>266 <ul>267 <li>CHM, PDF and XML:DocBook/peardoc2 converters are all stable!</li>268 <li>New tokenizer-based parser is literally twice as fast as the old parser(requires PHP 4.3.0+)</li>269 <li>New external user-level manual parsing and generation allows cross-linkingbetween API docs and DocBook-format tutorials/manuals!</li>270 <li>Color syntax source highlighting and cross-referencing with documentation ofsource code in HTML, CHM and PDF with customizable templating</li>271 <li>New Configuration files simplify repetitive and complex documentationtasks</li>272 <li>Brand new extensive manual - which can be generated directly from the sourceusing makedocs.ini!</li>273 <li>Many improvements to in-code API documentation including new tags, and betterhandling of in-code html tags</li>274 <li>New XML:DocBook/peardoc converter makes generating PEAR manual formats easy forPEAR developers along with the --pear command-line switch</li>275 <li>Many new HTML templates, all of them beautiful thanks to Marco vonBallmoos</li>276 <li>A brand new web interface thanks to Andrew Eddie!</li>277 </ul>278 </div>279 280 <div class="tab-page" id="tab_config">281 <h2 class="tab">Config</h2>282 <table cellspacing="0" cellpadding="3" border="0">283 <tr>284 <td colspan="2"><b>Use a pre-created config file for formvalues.</b></td>285 </tr>286 <tr>287 <td nowrap="nowrap">288 <b>change config directory:</b>289 </td>290 <td width="100%">

Page 693 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 741: PhpDocumentor 1.2.2 Manual

291 <form name="configForm" action="config.php" method="get">292 <input size="20" type="text" name="altuserdir"value="" /><input type="SUBMIT" value="Change"name="submitButton">293 <?php294 if (!empty($_REQUEST['altuserdir'])) {295 print '<br><i>changed to<b>"' .$_REQUEST['altuserdir'].'"</b></i>' ;296 }297 ?>298 </form>299 </td>300 </tr>301 <tr>302 <td nowrap="nowrap">303 <b>Choose a config:</b>304 </td>305 <td>306 <form name="dataForm" action="builder.php" method="get"onsubmit="return validate()" target="OutputFrame">307 <select name="setting_useconfig">308 <option value="" <?php if (empty($_REQUEST['altuserdir'])) print'selected'; ?>>don't use config file</option>309 <?php310 $dirs = array();311 $dirs = phpDocumentor_ConfigFileList($configdir);312 $path = '';313 $sel = ' selected';314 if (!empty($_REQUEST['altuserdir'])) $path = $configdir . PATH_DELIMITER;315 else $sel = '';316 foreach($dirs as $configfile)317 {318 print '<optionvalue="' .$path.$configfile.'"' .$sel.'>' .$configfile.".ini</option>\n" ;319 $sel = '';320 }321 ?>322 </select>323 <input type="SUBMIT" value="Go" name="submitButton">324 </td>325 </tr>326 <tr>327 <td colspan="2">328 Normally, phpDocumentor uses the form values from this form to set up parsing. Inversion 1.2, phpDocumentor allows you to "save" form values in configuration files so that youcan replicate common complicated documentation tasks with only one time. Just choose a config file belowor create a new one and refresh this page to choose it.329 </td>330 </tr>331 </table>332 </div>333 334 <div class="tab-page" id="tab_files">335 <h2 class="tab">Files</h2>336 <table cellspacing="0" cellpadding="3" border="0">337 <tr>338 <td align="right" valign="top" nowrap="nowrap">339 <b>Files<br />to parse</b>340 <br />341 <a href="javascript:addFile(document.dataForm.setting_filename)"title="Add the file in the help box">342 <?php343 echo showImage( 'images/rc-gui-install-24.png', '24', '24' );344 ?>345 </a>346 </td>347 <td valign="top">348 <textarea rows="5" cols="60" name="setting_filename"class="text"></textarea>349 </td>350 <td valign="top" class="small">351 This is a group of comma-separated names of php files or tutorials that will beprocessed by phpDocumentor.352 </td>353 </tr>354 <tr>355 <td align="right" valign="top" nowrap="nowrap">356 <b>Directory<br />to parse</b>357 <br />358 <a href="javascript:addFile(document.dataForm.setting_directory)"

Page 694 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 742: PhpDocumentor 1.2.2 Manual

title="Add the file in the help box">359 <?php360 echo showImage( 'images/rc-gui-install-24.png', '24', '24' );361 ?>362 </a>363 </td>364 <td valign="top">365 <textarea rows="5" cols="60" name="setting_directory"class="text" title=""></textarea>366 </td>367 <td valign="top" class="small">368 This is a group of comma-separated directories where php files or tutorials are foundthat will be processed by phpDocumentor. phpDocumentor automatically parses subdirectories369 </td>370 </tr>371 <tr>372 <td align="right" valign="top" nowrap="nowrap">373 <b>Files<br />to ignore</b>374 <br />375 <a href="javascript:addFile(document.dataForm.setting_ignore)"title="Add the file in the help box">376 <?php377 echo showImage( 'images/rc-gui-install-24.png', '24', '24' );378 ?>379 </a>380 </td>381 <td valign="top">382 <textarea rows="5" cols="60" class="text"name="setting_ignore"></textarea>383 </td>384 <td valign="top" class="small">385 A list of files (full path or filename), and patterns to ignore. Patterns may usewildcards * and ?. To ignore all subdirectories named "test" for example, using"test/" To ignore all files and directories with test in their name use "*test*"386 </td>387 </tr>388 <tr>389 <td align="right" valign="top" nowrap="nowrap">390 <b>Packages<br />to parse</b>391 </td>392 <td valign="top">393 <textarea rows="4" cols="60" class="text"name="setting_packageoutput"></textarea>394 </td>395 <td valign="top" class="small">396 The parameter packages is a group of comma separated names of abstract packages thatwill be processed by phpDocumentor. All package names must be separated by commas.397 </td>398 </tr>399 </table>400 </div>401 402 403 <div class="tab-page" id="tab_output">404 <h2 class="tab">Output</h2>405 <table cellspacing="0" cellpadding="3" border="0">406 <tr>407 <td align="right" valign="top" nowrap="nowrap">408 <b>Target</b>409 <br />410 <a href="javascript:addFile(document.dataForm.setting_target)"title="Add the file in the help box">411 <?php412 echo showImage( 'images/rc-gui-install-24.png', '24', '24' );413 ?>414 </td>415 <td valign="top">416 <input type="text" name="setting_target" size="60"class="text" />417 </td>418 <td valign="top" class="small">419 Target is the directory where the output produced by phpDocumentor will reside.420 </td>421 </tr>422 <tr>423 <td align="right" valign="top" nowrap="nowrap">424 <b>Output<br />Format</b>425 </td>426 <td valign="top">427 <textarea cols="60" rows="3" name="setting_output"

Page 695 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 743: PhpDocumentor 1.2.2 Manual

class="text">HTML:Smarty:default</textarea>428 <br />429 Output type:Converter name:template name430 <br />431 <?php432 echo htmlArraySelect( $converters, 'ConverterSetting', 'size="1"class="text" onchange="swapImage(this.options[this.options.selectedIndex].value);"' ,'HTML:Smarty:default' );433 ?>434 <br />435 <a href="javascript:addConverter(document.dataForm.setting_output)">436 Add the converter in the help box437 </a>438 <br />439 <br />440 <img name="screenshot" src="images/ss_HTML_Smarty_default.png"width="200" height="200" border="2" alt="Screen Shot">441 </td>442 <td valign="top" class="small">443 Outputformat may be HTML, XML, PDF, or CHM (case-sensitive) in version 1.2.444 <br />There is only one Converter for both CHM and PDF:<br/><i>default</i>.445 <br />There are 2 HTML Converters:<br /><i>frames</i> or<i>Smarty</i>.446 <br /><b>frames templates</b> may be any of:447 <br />448 <i>default, earthli, l0l33t, phpdoc.de, phphtmllib, phpedit, DOM/default,DOM/earthli, DOM/l0l33t, DOM/phphtmllib, or DOM/phpdoc.de</i>.449 <br />450 <b>Smarty templates</b> may be any of:451 <br />452 <i>default, HandS, or PHP</i>453 <br />454 <strong>XML:DocBook/peardoc2:default</strong> is the only choice for XML in1.2.2455 </td>456 </tr>457 </table>458 </div>459 460 <div class="tab-page" id="tab_options">461 <h2 class="tab">Options</h2>462 <table cellspacing="0" cellpadding="3" border="0">463 <tr>464 <td align="right" nowrap="nowrap">465 <b>Generated Documentation Title</b>466 </td>467 <td>468 <input type="text" name="setting_title" size="40"value="Generated Documentation" class="text">469 </td>470 <td class="small">471 Choose a title for the generated documentation472 </td>473 </tr>474 <tr>475 <td nowrap="nowrap">476 <b>Default Package Name</b>477 </td>478 <td>479 <input type="TEXT" name="setting_defaultpackagename"size="40" value="default" class="text" />480 </td>481 <td class="small">482 Choose a name for the default package483 </td>484 </tr>485 <tr>486 <td nowrap="nowrap">487 <b>Custom Tags</b>488 </td>489 <td>490 <input type="text" name="setting_customtags" size="40"class="text" />491 </td>492 <td class="small">493 Custom Tags is a comma-separated list of tags you want phpDocumentor to include asvalid tags in this parse. An example would be 'value, size' to allow @value and @size tags.494 </td>495 </tr>

Page 696 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 744: PhpDocumentor 1.2.2 Manual

496 <tr>497 <td nowrap="nowrap">498 <b>Parse @access private and @internal/{@internal}}</b>499 </td>500 <td nowrap="nowrap">501 <input type="checkbox" name="setting_parseprivate"value="on" />502 </td>503 <td class="small">504 The parameter Parse @access private tells phpDocumentor whether to parse elements withan '@access private' tag in their docblock. In addition, it will turn on parsing of @internal tags andinline {@internal}} sections505 </td>506 </tr>507 <tr>508 <td nowrap="nowrap">509 <b>Generate Highlighted Source Code</b>510 </td>511 <td nowrap="nowrap">512 <input type="checkbox" name="setting_sourcecode"value="on" />513 </td>514 <td class="small">515 The parameter Generate Highlighted Source Code tells phpDocumentor whether to generatehighlighted XRef source code similar to PHP-XRef output.516 </td>517 </tr>518 <tr>519 <td nowrap="nowrap">520 <b>JavaDoc-compliant<br />Description parsing.</b>521 </td>522 <td>523 <input type="checkbox" name="setting_javadocdesc"value="on" />524 </td>525 <td class="small">526 Normally, phpDocumentor uses several rules to determine the short description. Thisswitch asks phpDocumentor to simply search for the first period (.) and use it to delineate the shortdescription. In addition, the short description will not be separated from the long description.527 </td>528 </tr>529 <tr>530 <td nowrap="nowrap">531 <b>PEAR package repository parsing</b>532 </td>533 <td>534 <input type="checkbox" name="setting_pear" value="on"/>535 </td>536 <td class="small">537 PEAR package repositories have specific requirements:538 <ol>539 <li>Every package is in a directory with the same name.</li>540 <li>All private data members and methods begin with an underscore(function _privfunction()).</li>541 <li>_Classname() is a destructor</li>542 </ol>543 This option recognizes these facts and uses them to make assumptions aboutpackaging and access levels. Note that with PHP 5, the destructor option will be obsolete.544 </td>545 </tr>546 </table>547 </div>548 549 <div class="tab-page" id="tab_credits">550 <h2 class="tab">Credits</h2>551 phpDocumentor written by Joshua Eichorn552 <br />Web Interface originally written by Juan Pablo Morales, enhanced by Greg Beaverand super-charged by Andrew Eddie553 <p>554 Joshua Eichorn <ahref="mailto:[email protected]">[email protected]</a>555 <br>Juan Pablo Morales <a href=556 "mailto:[email protected]">[email protected]</a>557 <br>Gregory Beaver <a href=558 "mailto:[email protected]">[email protected]</a>559 <br>Andrew Eddie <a href=560 "mailto:[email protected]">[email protected]</a>561 </p>

Page 697 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 745: PhpDocumentor 1.2.2 Manual

562 <p>563 If you have any problems with phpDocumentor, please visit the website: <ahref='http://phpdocu.sourceforge.net'>phpdocu.sourceforge.net</a> and submit a bug564 </p>565 <!-- Created: Tue Jun 26 18:52:40 MEST 2001 -->566 <!-- hhmts start -->567 <pre>568 Last modified: $Date: 2003/08/13 18:37:20 $569 Revision: $Revision: 1.2.2.11 $570 </pre>571 </div>572 <div class="tab-page" id="tab_links">573 <h2 class="tab">Links</h2>574 <ul>575 <li><a href="http://www.phpdoc.org/manual.php">phpDocumentormanual</a> - Learn how to use phpDocumentor to document your PHP source code</li>576 <li><a href="http://phpdocu.sourceforge.net/">phpDocumentorhomepage</a> on SourceForge</li>577 <li><a href="http://freshmeat.net/projects/phpdocu">Freshmeatrecord</a> - subscribe here</li>578 </ul>579 </div>580 </div>581 <input type="hidden" name="interface" value="web">582 <input type="hidden" name="dataform" value="true">583 584 </form>585 586 <script type="text/javascript">587 588 tp1.addTabPage( document.getElementById( "tab_intro" ) );589 tp1.addTabPage( document.getElementById( "tab_config" ) );590 tp1.addTabPage( document.getElementById( "tab_files" ) );591 tp1.addTabPage( document.getElementById( "tab_output" ) );592 tp1.addTabPage( document.getElementById( "tab_options" ) );593 tp1.addTabPage( document.getElementById( "tab_credits" ) );594 tp1.addTabPage( document.getElementById( "tab_links" ) );595 setupAllTabs();596 </script>597 598 </body>599 </html>

Page 698 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 746: PhpDocumentor 1.2.2 Manual

File Source for top.php

Documentation for this file is available at top.php

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">2 <?php3 /**4 * Advanced Web Interface to phpDocumentor5 * @see phpdoc.php6 * @package phpDocumentor7 * @filesource8 */9 $path = dirname(dirname(__FILE__));10 include_once( " $path/phpDocumentor/common.inc.php");11 //12 // +------------------------------------------------------------------------+13 // | phpDocumentor :: docBuilder Web Interface |14 // +------------------------------------------------------------------------+15 // | Copyright (c) 2003 Andrew Eddie, Greg Beaver |16 // +------------------------------------------------------------------------+17 // | This source file is subject to version 3.00 of the PHP License, |18 // | that is available at http://www.php.net/license/3_0.txt. |19 // | If you did not receive a copy of the PHP license and are unable to |20 // | obtain it through the world-wide-web, please send a note to |21 // | [email protected] so we can mail you a copy immediately. |22 // +------------------------------------------------------------------------+23 //24 ?>25 <html>26 <head>27 <title>28 Form to submit to phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?>29 </title>30 <style type="text/css">31 body, td, th {32 font-family: verdana,sans-serif;33 font-size: 10pt;34 }35 .title {36 font-size: 12pt;37 }38 </style>39 </head>40 41 <body bgcolor="#0099cc" topmargin="0" leftmargin="0"marginheight="0" marginwidth="0">42 43 <table width="100%" cellspacing="0" cellpadding="0">44 <tr>45 <td bgcolor="#0099cc" height="35" width="100"nowrap="nowrap">46 <img src="../poweredbyphpdoc.gif" alt="" width="88"height="31" border="0" alt="" />47 </td>48 <td bgcolor="#0099cc" width="100%">49 <span class="title"><strong>docBuilder</strong> :: phpDocumentorv<?php print PHPDOCUMENTOR_VER; ?> Web Interface</span>50 </td>51 </tr>52 </table>53 54 </body>55 </html>

Page 699 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 747: PhpDocumentor 1.2.2 Manual

File Source for phpdoc.php

Documentation for this file is available at phpdoc.php

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">2 <?php3 /**4 * Web Interface to phpDocumentor5 * @see new_phpdoc.php6 * @filesource7 * @deprecated in favor of docbuilder (see {@link docbuilder/config.php})8 * @package phpDocumentor9 */11 // 12 // An HTML interface for Joshua Eichorn's phpDocumentor13 // Author: Juan Pablo Morales <[email protected]>14 // Joshua Eichorn <[email protected]>15 // Gregory Beaver <[email protected]>16 //17 // phpDocumentor, a program for creating javadoc style documentation from php code18 // Copyright (C) 2000-2002 Joshua Eichorn19 // 20 // This program is free software; you can redistribute it and/or modify21 // it under the terms of the GNU General Public License as published by22 // the Free Software Foundation; either version 2 of the License, or23 // (at your option) any later version.24 //25 // This program is distributed in the hope that it will be useful,26 // but WITHOUT ANY WARRANTY; without even the implied warranty of27 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the28 // GNU General Public License for more details.29 //30 // You should have received a copy of the GNU General Public License31 // along with this program; if not, write to the Free Software32 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA33 //34 //35 // Copyleft 2001 Juan Pablo Morales36 37 // set up include path so we can find all files, no matter what38 $GLOBALS['_phpDocumentor_install_dir'] = dirname(realpath(__FILE__));39 // add my directory to the include path, and make it first, should fix any errors40 if (substr(PHP_OS, 0, 3) == 'WIN')41 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].';'.ini_get('include_path'));42 else43 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].':'.ini_get('include_path'));44 45 /**46 * common file information47 */48 include_once("phpDocumentor/common.inc.php" );49 if (!function_exists('version_compare'))50 {51 print "phpDocumentor requires PHP version 4.1.0 or greater to function" ;52 exit;53 }54 55 // find the .ini directory by parsing phpDocumentor.ini and extracting_phpDocumentor_options[userdir]56 $ini = phpDocumentor_parse_ini_file($_phpDocumentor_install_dir . PATH_DELIMITER .'phpDocumentor.ini', true);57 if (isset($ini['_phpDocumentor_options']['userdir']))58 $configdir = $ini['_phpDocumentor_options']['userdir'];59 else60 $configdir = $_phpDocumentor_install_dir . '/user';61 62 // allow the user to change this at runtime63 if (!empty($_REQUEST['altuserdir'])) $configdir = $_REQUEST['altuserdir'];64 ?>65 <html>66 <head>

Page 700 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 748: PhpDocumentor 1.2.2 Manual

67 <title>68 Form to submit to phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?>69 </title>70 <?php if(!isset($_GET['submit']) || !empty($_REQUEST['altuserdir'])) {71 ?>72 <script type="text/javascript" language="Javascript">73 /**74 Creates some global variables75 */76 function initializate() {77 //78 //The "platform independent" newLine79 //80 //Taken from http://developer.netscape.com/docs/manuals/communicator/jsref/brow1.htm#101042681 if (navigator.appVersion.lastIndexOf('Win') != -1)82 $newLine="\r\n";83 else 84 $newLine="\n";85 /* for($a=0;$a<document.dataForm.elements.length;$a++) {86 alert("The name is '"+document.dataForm.elements[$a].name+"' "+$a);87 }88 */89 }90 /**Adds the contents of the help box as a directory91 */92 function addDirectory($object) {93 $object.value = prepareString($object.value)+document.helpForm.fileName.value;94 }95 /**Adds the contents of the converter box to the converters list96 */97 function addConverter($object) {98 $object.value = prepareString($object.value)+document.dataForm.ConverterSetting.value;99 }100 /**Adds the contents of the help box as a file to the given control101 */102 function addFile($object) {103 $object.value = prepareString($object.value)+document.helpForm.fileName.value;104 }105 /**Takes a given string and leaves it ready to add a new string106 That is, puts the comma and the new line if needed107 */108 function prepareString($myString) {109 //First verify that a comma is not at the end110 if($myString.lastIndexOf(",") >= $myString.length-2) {111 //We have a comma at the end112 return $myString;113 }114 if($myString.length > 0) {115 $myString+=","+$newLine;116 }117 return $myString;118 }119 /**Do the validation needed before sending the from and return a truth value indicating if the formcan be sent120 */121 function validate() {122 //Take out all newLines and change them by nothing123 //This could be done by using javascript function's replacebut that was implemented only untilNavigator 4.0 and so it is better to use more backward compatible functions like substr 124 document.dataForm.elements[0].value= stripNewLines(document.dataForm.elements[0].value);125 document.dataForm.elements[1].value= stripNewLines(document.dataForm.elements[1].value);126 document.dataForm.elements[2].value= stripNewLines(document.dataForm.elements[2].value);127 document.dataForm.elements[3].value= stripNewLines(document.dataForm.elements[3].value);128 document.dataForm.elements[4].value= stripNewLines(document.dataForm.elements[4].value);129 document.dataForm.elements[5].value= stripNewLines(document.dataForm.elements[5].value);130 document.dataForm.elements[6].value= stripNewLines(document.dataForm.elements[6].value);131 document.dataForm.elements[7].value= stripNewLines(document.dataForm.elements[7].value);132 //By returning true we are allowing the form to be submitted133 return true;134 }135 /**Takes a string and removes all the ocurrences of new lines136 Could have been implemented a lot easier with replace but it's not very backwards compatible137 */138 function stripNewLines($myString) {139 return myReplace($myString,$newLine,'');140 }141 function myReplace($string,$text,$by) {142 // Replaces text with by in string143 var $strLength = $string.length, $txtLength = $text.length;144 if (($strLength == 0) || ($txtLength == 0)) return $string;

Page 701 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 749: PhpDocumentor 1.2.2 Manual

145 146 var $i = $string.indexOf($text);147 if ((!$i) && ($text != $string.substring(0,$txtLength))) return $string;148 if ($i == -1) return $string;149 150 var $newstr = $string.substring(0,$i) + $by;151 152 if ($i+$txtLength < $strLength)153 $newstr += myReplace($string.substring($i+$txtLength,$strLength),$text,$by);154 155 return $newstr;156 }157 </script><?php } ?>158 </head>159 <?php160 //Find out if we are submitting and if we are, send it161 // This code originally by Joshua Eichorn on phpdoc.php162 //163 if(isset($_GET['submit']) && empty( $_REQUEST['altuserdir'])) {164 echo "<body bgcolor=\"#ffffff\">" ;165 echo "<h1>Parsing Files ...</h1>" ;166 flush();167 echo "<pre>\n" ;168 /** phpdoc.inc */168 169 include("phpDocumentor/phpdoc.inc" );170 echo "</pre>\n" ;171 echo "<h1>Operation Completed!!</h1>" ;172 } else {173 ?>174 <body bgcolor="#ffffff" onload="javascript:initializate()">175 <h1>176 Form to submit to phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?>177 </h1>178 <form name="dataForm" action="phpdoc.php" method="GET"onsubmit=179 "return validate()">180 <div align="center">181 <table cellpadding="0" cellspacing="0" border="0"width="80%"182 bgcolor="#000000">183 <tr>184 <td>185 <table cellpadding="0" cellspacing="1"border="0" width=186 "100%">187 <tr>188 <td bgcolor="#ff6633">189 <b>Use a pre-created config file for form values.</b> 190 </td>191 </tr>192 <tr>193 <td bgcolor="#CCCCCC">194 Normally, phpDocumentor uses the form values from this form to set upparsing. In version 1.2,195 phpDocumentor allows you to "save" form values inconfiguration files so that you can replicate196 common complicated documentation tasks with only one time. Justchoose a config file below or create a197 new one and refresh this page to choose it.<hr/><b>change config directory:</b><input size="20" type="text"name="altuserdir" value=""><?php if (!empty($_REQUEST['altuserdir'])) print'<br><i>changed to <b>"' .$_REQUEST['altuserdir'].'"</b></i>' ;?>198 <b>Choose a config:</b> <select name="setting[useconfig]">199 <option value="" <?php if(empty($_REQUEST['altuserdir'])) print 'selected'; ?>>don't use config file</option>200 <?php201 $dirs = array();202 $dirs = phpDocumentor_ConfigFileList($configdir);203 $path = '';204 $sel = ' selected';205 if (!empty($_REQUEST['altuserdir'])) $path = $configdir . PATH_DELIMITER;206 else $sel = '';207 foreach($dirs as $configfile)208 {209 print '<optionvalue="' .$path.$configfile.'"' .$sel.'>' .$configfile.".ini</option>\n" ;210 $sel = '';211 }

Page 702 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 750: PhpDocumentor 1.2.2 Manual

212 ?>213 </select><input type="SUBMIT" value=214 "Go" name="submitButton"><br>215 </td>216 </tr>217 <tr>218 <td bgcolor="#ffdddd">219 <b>Generated Documentation Title</b> 220 </td>221 </tr>222 <tr>223 <td bgcolor="#eeeeee">224 Choose a title for the generated documentation<br>225 <input type="TEXT" name="setting[title]" size=226 "80" value="Generated Documentation"><br>227 </td>228 </tr>229 <tr>230 <td bgcolor="#ff6633">231 <b>Default Package Name</b> 232 </td>233 </tr>234 <tr>235 <td bgcolor="#cccccc">236 Choose a name for the default package<br>237 <input type="TEXT"name="setting[defaultpackagename]" size=238 "80" value="default"><br>239 </td>240 </tr>241 <tr>242 <td bgcolor="#ffdddd">243 <b>Target</b> 244 </td>245 </tr>246 <tr>247 <td bgcolor="#eeeeee">248 Target is the directory where249 the output produced by phpDocumentor will reside<br>250 <input type="TEXT" name="setting[target]" size=251 "80"><br>252 <a href=253 "javascript:addDirectory(document.dataForm.elements[5])">254 Add the directory in the help box</a> 255 </td>256 </tr>257 <tr>258 <td bgcolor="#ffdddd">259 <b>Custom Tags</b> 260 </td>261 </tr>262 <tr>263 <td bgcolor="#eeeeee">264 Custom Tags is a comma-separated list of tags265 you want phpDocumentor to include as valid tags266 in this parse. An example would be "value, size"267 to allow @value and @size tags.268 <input type="TEXT" name="setting[customtags]"size=269 "80"><br>270 </td>271 </tr>272 <tr>273 <td bgcolor="#ff6633">274 <b>Packages to parse</b> 275 </td>276 </tr>277 <tr>278 <td bgcolor="#CCCCCC">279 The parameter packages is a group of comma280 separated names of abstract packages that will281 be processed by phpDocumentor. All package names must be282 separated by commas.<br>283 <textarea rows="3" cols="80" name=284 "setting[packageoutput]"></textarea> <br>285 </td>286 </tr>287 <tr>288 <td bgcolor="#ffdddd">289 <b>Files to parse</b>

Page 703 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 751: PhpDocumentor 1.2.2 Manual

290 </td>291 </tr>292 <tr>293 <td bgcolor="#eeeeee">294 This is a group of comma-separated names of php files295 or tutorials that will be processed by phpDocumentor.<br>296 <textarea rows="6" cols="80" name=297 "setting[filename]"></textarea> <br>298 <a href=299 "javascript:addFile(document.dataForm.elements[8])">300 Add the file in the help box</a> 301 </td>302 </tr>303 <tr>304 <td bgcolor="#ff6633">305 <b>Directory to parse</b> 306 </td>307 </tr>308 <tr>309 <td bgcolor="#CCCCCC">310 This is a group of comma-separated directories where php files311 or tutorials are found that will be processed by phpDocumentor.312 phpDocumentor automatically parses subdirectories<br>313 <textarea rows="6" cols="80"name="setting[directory]"></textarea> <br>314 <a href=315 "javascript:addDirectory(document.dataForm.elements[9])">316 Add the directory in the help box</a> 317 </td>318 </tr>319 <tr>320 <td bgcolor="#ffdddd">321 <b>Output Information</b> 322 </td>323 </tr>324 <tr>325 <td bgcolor="#eeeeee">326 <br>327 Output Information is a comma-separated list of<b>Outputformat:Converter:Templates</b>328 to apply to the output. The Converters must be classes descendedfrom Converter329 defined in the phpDocumentor files, or parsing will not work. Outputformat330 may be HTML, XML, PDF, or CHM (case-sensitive) in version 1.2. Thereis only one Converter331 for both CHM and PDF, <b>default</b>. There are 2 HTMLConverters,332 <b>frames</b> and <b>Smarty</b>.<b>frames templates</b> may be any of:<br><br>333 <b>default, l0l33t, phpdoc.de, phphtmllib, phpedit,DOM/default, DOM/l0l33t, or DOM/phpdoc.de</b>.334 <b>Smarty templates</b> may be any of:<br><br>335 <b>default or PHP</b>.336 <br>337 There is only 1 template for all other Converters,<b>default</b>338 <br>Output type:Converter name:template name <input type=339 "TEXT" name="setting[output]" value=340 "HTML:Smarty:default" size="80"><br>341 <select name="ConverterSetting">342 <option value="HTML:frames:default">HTML:frames:default</option>343 <option value="HTML:frames:l0l33t">HTML:frames:l0l33t</option>344 <option value="HTML:frames:phpdoc.de">HTML:frames:phpdoc.de</option>345 <option value="HTML:frames:phphtmllib">HTML:frames:phphtmllib</option>346 <option value="HTML:frames:phpedit">HTML:frames:phpedit</option>347 <option value="HTML:frames:DOM/default">HTML:frames:DOM/default</option>348 <option value="HTML:frames:DOM/l0l33t">HTML:frames:DOM/l0l33t</option>349 <optionvalue="HTML:frames:DOM/phpdoc.de">HTML:frames:DOM/phpdoc.de</option>350 <option value="HTML:Smarty:default" SELECTED>HTML:Smarty:default</option>351 <option value="HTML:Smarty:PHP">HTML:Smarty:PHP</option>352 <option value="PDF:default:default">PDF:default:default</option>353 <option value="CHM:default:default">CHM:default:default</option>354 <optionvalue="XML:DocBook/peardoc2:default">XML:DocBook/peardoc2:default</option>355 </select><br>356 <a href=357 "javascript:addConverter(document.dataForm.elements[10])">

Page 704 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 752: PhpDocumentor 1.2.2 Manual

358 Add the converter in the help box</a> 359 </td>360 </tr>361 <tr>362 <td bgcolor="#ff6633">363 <b>Files to ignore</b> 364 </td>365 </tr>366 <tr>367 <td bgcolor="#CCCCCC">368 A list of files (full path or filename), and patterns369 to ignore. Patterns may use wildcards * and ?. To370 ignore all subdirectories named "test" for example,371 using "test/" To ignore all files and directories372 with test in their name use "*test*"373 <textarea rows="6" cols="80"name="setting[ignore]"></textarea> <br>374 <a href=375 "javascript:addDirectory(document.dataForm.elements[12])">376 Add the directory in the help box</a> 377 </td>378 </tr>379 <tr>380 <td bgcolor="#ff6633">381 <b>Parse @access private</b> 382 </td>383 </tr>384 <tr>385 <td bgcolor="#CCCCCC">386 The parameter Parse @access private tells phpDocumentor387 whether to parse elements with an "@access private" tag intheir docblock<br>388 <input type="checkbox"name="setting[parseprivate]" value="on">Parse private <br>389 </td>390 </tr>391 <tr>392 <td bgcolor="#ff6633">393 <b>JavaDoc-compliant Description parsing.</b> 394 </td>395 </tr>396 <tr>397 <td bgcolor="#CCCCCC">398 Normally, phpDocumentor uses several rules to determine the shortdescription. This switch399 asks phpDocumentor to simply search for the first period (.) and useit to delineate the short400 description. In addition, the short description will not beseparated from the long description<br>401 <input type="checkbox"name="setting[javadocdesc]" value="on">JavaDoc-compliant Description <br>402 </td>403 </tr>404 </table>405 </td>406 </tr>407 </table>408 <input type="HIDDEN" name="interface" value="web"><input type=409 "HIDDEN" name="submit" value="true"> <inputtype="SUBMIT" value=410 "Send Form" name="submitButton">411 </div>412 </form>413 <br>414 <br>415 <div align="center">416 <table cellpadding="0" cellspacing="0" border="0"width="80%" bgcolor=417 "#000000">418 <tr>419 <td>420 <table cellpadding="0" cellspacing="1"border="0" width=421 "100%">422 <tr>423 <td bgcolor="#ffdddd">424 <b>A little help</b> 425 </td>

Page 705 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 753: PhpDocumentor 1.2.2 Manual

426 </tr>427 <tr>428 <td bgcolor="#eeeeee">429 Since remember long path is not that easy here is a430 little file control to view names of files that can431 the be aggregated to the different properties 432 <form name="helpForm" action=""method="get"433 enctype="multipart/form-data">434 <input size="80" type="file"name="fileName">435 </form>436 </td>437 </tr>438 </table>439 </td>440 </tr>441 </table>442 </div>443 <br>444 <b>Web-Interface Author:</b>445 <p>446 Juan Pablo Morales<br>447 <a href=448 "mailto:[email protected]">[email protected]</a><br>449 Gregory Beaver<br>450 <a href=451 "mailto:[email protected]">[email protected]</a>,all post-0.3.0 modifications452 </p>453 <p>454 If you have any problems with phpDocumentor, please visit the website: <a455 href='http://phpdocu.sourceforge.net'>phpdocu.sourceforge.net</a> and456 submit a bug457 </p>458 <!-- Created: Tue Jun 26 18:52:40 MEST 2001 -->459 <!-- hhmts start -->460 <pre>461 Last modified: $Date: 2003/06/03 05:00:44 $462 Revision: $Revision: 1.47.2.1 $463 </pre>464 <!-- hhmts end -->465 <?php } //End the else that prints all code466 ?>467 </body>468 </html>

Page 706 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 754: PhpDocumentor 1.2.2 Manual

File Source for common.inc.php

Documentation for this file is available at common.inc.php

1 <?php2 //3 // +------------------------------------------------------------------------+4 // | phpDocumentor |5 // +------------------------------------------------------------------------+6 // | Copyright (c) 2000-2003 Joshua Eichorn, Gregory Beaver |7 // | Email [email protected], [email protected] |8 // | Web http://www.phpdoc.org |9 // | Mirror http://phpdocu.sourceforge.net/ |10 // | PEAR http://pear.php.net/package-info.php?pacid=137 |11 // +------------------------------------------------------------------------+12 // | This source file is subject to version 3.00 of the PHP License, |13 // | that is available at http://www.php.net/license/3_0.txt. |14 // | If you did not receive a copy of the PHP license and are unable to |15 // | obtain it through the world-wide-web, please send a note to |16 // | [email protected] so we can mail you a copy immediately. |17 // +------------------------------------------------------------------------+18 //19 20 /**21 * Common variables/functions used by other files in phpDocumentor22 * @package phpDocumentor23 * @filesource24 */25 /** phpDocumentor version */25 26 define("PHPDOCUMENTOR_VER" ,"1.2.2" );27 /** phpDocumentor version */27 28 define("PHPDOCUMENTOR_WEBSITE" ,"http://www.phpdoc.org" );29 define('SMART_PATH_DELIMITER', DIRECTORY_SEPARATOR ); // set the correct path delimiter30 define('tokenizer_ext', extension_loaded('tokenizer') &&version_compare(phpversion(),"4.3.0" ,">=" ));31 // we just replace all the \ with / so that we can just operate on /32 define('PATH_DELIMITER', '/' ); // set the correct path delimiter33 define('PHPDOCUMENTOR_WINDOWS',substr(PHP_OS, 0, 3) == 'WIN');34 35 /** used in phpdoc.php and new_phpdoc.php */35 36 function phpDocumentor_ConfigFileList($directory)37 {38 $ret = array();39 if (@is_dir($directory))40 {41 $ret = array();42 $d = @dir($directory); // thanks to Jason E Sweat ([email protected]) for fix43 while($d && $entry=$d-> read())44 {45 $getentry = false;46 if (strcmp($entry,"." ) != 0 && strcmp($entry,".." ) != 0)47 {48 if (substr($entry,0,1) != "." ) $getentry = true;49 }50 if ($getentry == true)51 {52 if (strpos($entry,'.ini'))53 if (is_file($directory . PATH_DELIMITER . $entry))54 {55 $ret[] = str_replace('.ini','',$entry);56 }57 }58 }59 if ($d) $d-> close();60 } else61 {62 }63 return $ret;

Page 707 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 755: PhpDocumentor 1.2.2 Manual

64 }65 66 67 /**68 * Parse an .ini file69 * 70 * Works like {@link parse_ini_file}, except it will take a section like:71 *72 * <pre>73 * [MYVAR]74 * value175 * value276 * value377 * </pre>78 *79 * and return an associative array(MYVAR => array(value1, value2, value3))80 * @return array 81 * @param string full path to the ini file82 * @param boolean add an associative index for each section [in brackets]83 */84 function phpDocumentor_parse_ini_file($filename, $process_sections = false)85 {86 $ini_array = array();87 $sec_name = "" ;88 $lines = @file($filename);89 if( !$lines) return $lines;90 foreach($lines as $line)91 {92 // code by Greg Beaver, ignore comments93 if ($line[0] == ';') continue;94 $line = trim($line);95 96 if($line == "" )97 {98 continue;99 }100 if($line[0] == "[" && $line[strlen($line) - 1] == "]" )101 {102 $sec_name = substr($line, 1, strlen($line) - 2);103 } else104 {105 if (strpos($line,"=" ))106 {107 $pos = strpos($line, "=" );108 $property = trim(substr($line, 0, $pos));109 // code by Greg Beaver110 $value = trim(substr($line, $pos + 1));111 if ($value == 'false') $value = false;112 if ($value == 'true') $value = true;113 if (substr($value,0,1) == '"' && substr($value,-1) == '"' )114 {115 $value = stripcslashes(substr($value,1,count($value) - 2));116 }117 // done additions118 119 if($process_sections)120 {121 if ($sec_name != '')122 $ini_array[$sec_name][$property] = $value;123 else124 $ini_array[$property] = $value;125 } else126 {127 $ini_array[$property] = $value;128 }129 } else130 {131 // code by Greg Beaver132 if (trim($line[0]) == ';') continue;133 if($process_sections)134 {135 $ini_array[$sec_name][] = trim($line);136 }137 // done additions138 }139 }140 }141 return $ini_array;142 }143

Page 708 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 756: PhpDocumentor 1.2.2 Manual

144 145 if (!function_exists('array_key_exists'))146 {147 /** @ignore */148 function array_key_exists($key, $search)149 {150 foreach($search as $keys => $nul)151 {152 if ($key == $keys) return true;153 }154 return false;155 }156 }157 if (!function_exists('is_a'))158 {159 /** @ignore */160 function is_a($classname, $classquery)161 {162 $father = get_parent_class($classname);163 if (strtolower($father) == strtolower($classquery))164 {165 return true;166 } elseif (!empty($father))167 {168 return is_a($father, $classquery);169 } else170 {171 return false;172 }173 }174 }175 176 177 /** Debugging output */177 178 function debug($s)179 {180 echo " $s\n";181 }182 183 /**184 * Returns a formatted var_dump for debugging purposes.185 * @param string $s string to display186 * @param mixed $v variable to display with var_dump()187 * @param mixed $v... unlimited number of additional variables to display with var_dump()188 */189 function fancy_debug($s,$v)190 {191 if (isset($GLOBALS['dont_debug']) && $GLOBALS['dont_debug']) return;192 debug($s."\n\n</pre><blockquote><pre>" );193 var_dump($v);194 if (func_num_args()> 2)195 {196 for($i=2;$i< func_num_args();$i++)197 {198 $a = func_get_arg($i);199 // debug(" ");200 var_dump($a);201 }202 }203 debug("</pre></blockquote><pre>\n\n" );204 }205 206 ?>

Page 709 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 757: PhpDocumentor 1.2.2 Manual

File Source for find_phpdoc.php

Documentation for this file is available at find_phpdoc.php

1 <?php2 //3 // +------------------------------------------------------------------------+4 // | phpDocumentor |5 // +------------------------------------------------------------------------+6 // | Copyright (c) 2000-2003 Joshua Eichorn, Gregory Beaver |7 // | Email [email protected], [email protected] |8 // | Web http://www.phpdoc.org |9 // | Mirror http://phpdocu.sourceforge.net/ |10 // | PEAR http://pear.php.net/package-info.php?pacid=137 |11 // +------------------------------------------------------------------------+12 // | This source file is subject to version 3.00 of the PHP License, |13 // | that is available at http://www.php.net/license/3_0.txt. |14 // | If you did not receive a copy of the PHP license and are unable to |15 // | obtain it through the world-wide-web, please send a note to |16 // | [email protected] so we can mail you a copy immediately. |17 // +------------------------------------------------------------------------+18 //19 20 /**21 * Utility file: used to find location of phpDocumentor22 * @filesource23 * @package phpDocumentor24 * @subpackage setup25 */26 /**27 * Dummy value28 */29 @include('');30 // value used to test whether include worked31 return 6;32 ?>

Package tests

Page 710 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 758: PhpDocumentor 1.2.2 Manual

File Source for file_dialog.php

Documentation for this file is available at file_dialog.php

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">2 <?php3 /**4 * Advanced Web Interface to phpDocumentor5 * @see phpdoc.php6 * @package phpDocumentor7 * @filesource8 */9 //10 // +------------------------------------------------------------------------+11 // | phpDocumentor :: docBuilder Web Interface |12 // +------------------------------------------------------------------------+13 // | Copyright (c) 2003 Andrew Eddie, Greg Beaver |14 // +------------------------------------------------------------------------+15 // | This source file is subject to version 3.00 of the PHP License, |16 // | that is available at http://www.php.net/license/3_0.txt. |17 // | If you did not receive a copy of the PHP license and are unable to |18 // | obtain it through the world-wide-web, please send a note to |19 // | [email protected] so we can mail you a copy immediately. |20 // +------------------------------------------------------------------------+21 //22 23 $root_dir = dirname(dirname(__FILE__));24 25 if (!function_exists( 'version_compare' )) {26 print "phpDocumentor requires PHP version 4.1.0 or greater to function" ;27 exit;28 }29 30 // set up include path so we can find all files, no matter what31 $GLOBALS['_phpDocumentor_install_dir'] = dirname(dirname( realpath( __FILE__ ) ));32 // add my directory to the include path, and make it first, should fix any errors33 if (substr(PHP_OS, 0, 3) == 'WIN') {34 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].';'.ini_get('include_path'));35 } else {36 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].':'.ini_get('include_path'));37 }38 39 /**40 * common file information41 */42 include_once(" $root_dir/phpDocumentor/common.inc.php");43 44 // find the .ini directory by parsing phpDocumentor.ini and extracting_phpDocumentor_options[userdir]45 $ini = phpDocumentor_parse_ini_file($_phpDocumentor_install_dir . PATH_DELIMITER .'phpDocumentor.ini', true);46 if (isset($ini['_phpDocumentor_options']['userdir'])) {47 $configdir = $ini['_phpDocumentor_options']['userdir'];48 } else {49 $configdir = $_phpDocumentor_install_dir . '/user';50 }51 52 // allow the user to change this at runtime53 if (!empty( $_REQUEST['altuserdir'] )) {54 $configdir = $_REQUEST['altuserdir'];55 }56 ?>57 <html>58 <head>59 <title>60 File browser61 </title>62 <style type="text/css">63 body, td, th, select, input {64 font-family: verdana,sans-serif;65 font-size: 9pt;

Page 711 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 759: PhpDocumentor 1.2.2 Manual

66 }67 .text {68 font-family: verdana,sans-serif;69 font-size: 9pt;70 border: solid 1px #000000;71 }72 .button {73 border: solid 1px #000000;74 }75 .small {76 font-size: 7pt;77 }78 </style>79 80 <script src="../HTML_TreeMenu-1.1.2/TreeMenu.js" language="JavaScript"type="text/javascript"></script>81 82 <?php83 include_once(" $root_dir/HTML_TreeMenu-1.1.2/TreeMenu.php");84 set_time_limit(0); // six minute timeout85 ini_set("memory_limit" ,"256M" );86 87 /**88 * Directory Node89 * @package HTML_TreeMenu90 */91 class DirNode extends HTML_TreeNode92 {93 /**94 * full path to this node95 * @var string 96 */97 var $path;98 99 function DirNode($text = false, $link = false, $icon = false, $path, $events = array())100 {101 $this-> path = $path;102 $options = array();103 if ($text) $options['text'] = $text;104 if ($link) $options['link'] = $link;105 if ($icon) $options['icon'] = $icon;106 HTML_TreeNode::HTML_TreeNode($options,$events);107 }108 }109 110 include_once( " $root_dir/docbuilder/includes/utilities.php" );111 112 $menu = new HTML_TreeMenu();113 $filename = '';114 if (isset($_GET) && isset( $_GET['fileName'])) {115 $filename = $_GET['fileName'];116 }117 $filename = realpath($filename);118 $pd = (substr(PHP_OS, 0, 3) == 'WIN') ? '\\' : '/';119 $test = ($pd == '/') ? '/' : 'C:\\';120 if (empty($filename) || ($filename == $test)) {121 $filename = ($pd == '/') ? '/' : 'C:\\';122 $node = false;123 getDir($filename,$node);124 } else {125 flush();126 // if ($pd != '/') $pd = $pd.$pd;127 $anode = false;128 switchDirTree($filename,$anode);129 // recurseDir($filename,$anode);130 $node = new HTML_TreeNode(array('text' => "Click to view" .addslashes($filename),'link' => "" ,'icon' => 'branchtop.gif'));131 $node-> addItem($anode);132 };133 $menu-> addItem($node);134 $DHTMLmenu = & new HTML_TreeMenu_DHTML($menu,135 array('images' =>str_replace('/docbuilder/file_dialog.php','',$_SERVER['PHP_SELF']) .136 '/HTML_TreeMenu-1.1.2/images'));137 ?>138 <script type="text/javascript" language="Javascript">139 /**140 Creates some global variables141 */142 function initializate() {

Page 712 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 760: PhpDocumentor 1.2.2 Manual

143 //144 //The "platform independent" newLine145 //146 //Taken from http://developer.netscape.com/docs/manuals/communicator/jsref/brow1.htm#1010426147 if (navigator.appVersion.lastIndexOf( 'Win' ) != -1) {148 $pathdelim="\\";149 $newLine="\r\n";150 } else {151 $newLine="\n";152 $pathdelim="/";153 }154 /* for($a=0;$a<document.dataForm.elements.length;$a++) {155 alert("The name is '"+document.dataForm.elements[$a].name+"' "+$a);156 }157 */158 }159 /** Sets the contents of the help box, and submits the form160 */161 function setHelp( $str ) {162 document.helpForm.fileName.value = $str;163 document.helpForm.submit();164 }165 166 /** Sets the contents of the help box only167 */168 function setHelpVal( $str ) {169 document.helpForm.fileName.value = $str;170 }171 /**Takes a given string and leaves it ready to add a new string172 That is, puts the comma and the new line if needed173 */174 function prepareString($myString) {175 //First verify that a comma is not at the end176 if($myString.lastIndexOf(",") >= $myString.length-2) {177 //We have a comma at the end178 return $myString;179 }180 if($myString.length > 0) {181 $myString+=","+$newLine;182 }183 return $myString;184 }185 186 187 function myReplace($string,$text,$by) {188 // Replaces text with by in string189 var $strLength = $string.length, $txtLength = $text.length;190 if (($strLength == 0) || ($txtLength == 0)) return $string;191 192 var $i = $string.indexOf($text);193 if ((!$i) && ($text != $string.substring(0,$txtLength))) return $string;194 if ($i == -1) return $string;195 196 var $newstr = $string.substring(0,$i) + $by;197 198 if ($i+$txtLength < $strLength)199 $newstr += myReplace($string.substring($i+$txtLength,$strLength),$text,$by);200 201 return $newstr;202 }203 </script>204 205 </head>206 207 <body bgcolor="#ffffff" onload="javascript:initializate()">208 <strong>Directory Browser</strong>209 210 <table cellpadding="1" cellspacing="1" border="0"width="100%">211 212 <form name="helpForm" action="<?php print $_SERVER['PHP_SELF']; ?>"method="get" enctype="multipart/form-data">213 <tr>214 <td colspan="2" width="100%">215 Use this to find directories and files which can be used below:216 </td>217 </tr>218 <tr>219 <td align="right">220 <a href="javascript:document.helpForm.submit();" title="browse

Page 713 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 761: PhpDocumentor 1.2.2 Manual

tree">221 <?php222 echo showImage( 'images/rc-gui-install-24.png', '24', '24' );223 ?>224 </a>225 </td>226 <td>227 <input size="60" type="text" name="fileName"value="<?php print $filename;?>" class="text" />228 </td>229 </tr>230 <tr>231 <td>232 <input type="submit" name="helpdata" value="close"class="button" onclick="window.close();" />233 </td>234 <td align="right">235 <input type="submit" name="helpdata" value="accept"class="button"onclick="opener.setFile(document.helpForm.fileName.value);window.close();" />236 </td>237 </tr>238 <tr>239 <td colspan="2">240 <div id='menuLayer'></div>241 <?php $DHTMLmenu-> printMenu(); ?>242 </td>243 </tr>244 </form>245 246 </table>247 248 </body>249 </html>

Page 714 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 762: PhpDocumentor 1.2.2 Manual

File Source for new_phpdoc.php

Documentation for this file is available at new_phpdoc.php

1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">2 <?php3 /**4 * Advanced Web Interface to phpDocumentor5 * @see phpdoc.php6 * @package phpDocumentor7 * @deprecated in favor of docbuilder (see {@link docbuilder/config.php})8 * @filesource9 */11 // 12 // An HTML interface for Joshua Eichorn's phpDocumentor13 // Author: Juan Pablo Morales <[email protected]>14 // Joshua Eichorn <[email protected]>15 // Gregory Beaver <[email protected]>16 //17 // phpDocumentor, a program for creating javadoc style documentation from php code18 // Copyright (C) 2000-2002 Joshua Eichorn19 // 20 // This program is free software; you can redistribute it and/or modify21 // it under the terms of the GNU General Public License as published by22 // the Free Software Foundation; either version 2 of the License, or23 // (at your option) any later version.24 //25 // This program is distributed in the hope that it will be useful,26 // but WITHOUT ANY WARRANTY; without even the implied warranty of27 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the28 // GNU General Public License for more details.29 //30 // You should have received a copy of the GNU General Public License31 // along with this program; if not, write to the Free Software32 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA33 //34 //35 // Copyleft 2001 Juan Pablo Morales36 37 if (!function_exists('version_compare'))38 {39 print "phpDocumentor requires PHP version 4.1.0 or greater to function" ;40 exit;41 }42 43 // set up include path so we can find all files, no matter what44 $GLOBALS['_phpDocumentor_install_dir'] = dirname(realpath(__FILE__));45 // add my directory to the include path, and make it first, should fix any errors46 if (substr(PHP_OS, 0, 3) == 'WIN')47 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].';'.ini_get('include_path'));48 else49 ini_set('include_path',$GLOBALS['_phpDocumentor_install_dir'].':'.ini_get('include_path'));50 51 /**52 * common file information53 */54 include_once("phpDocumentor/common.inc.php" );55 56 // find the .ini directory by parsing phpDocumentor.ini and extracting_phpDocumentor_options[userdir]57 $ini = phpDocumentor_parse_ini_file($_phpDocumentor_install_dir . PATH_DELIMITER .'phpDocumentor.ini', true);58 if (isset($ini['_phpDocumentor_options']['userdir']))59 $configdir = $ini['_phpDocumentor_options']['userdir'];60 else61 $configdir = $_phpDocumentor_install_dir . '/user';62 63 // allow the user to change this at runtime64 if (!empty($_REQUEST['altuserdir'])) $configdir = $_REQUEST['altuserdir'];65 ?>66 <html>

Page 715 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 763: PhpDocumentor 1.2.2 Manual

67 <head>68 <title>69 Form to submit to phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?>70 </title>71 <?php72 if(!isset($_GET['submit']) || !empty($_REQUEST['altuserdir'])) {73 ?>74 <script src="HTML_TreeMenu-1.1.2/TreeMenu.js" language="JavaScript"type="text/javascript"></script>75 <?php76 include_once('HTML_TreeMenu-1.1.2/TreeMenu.php');77 set_time_limit(0); // six minute timeout78 ini_set("memory_limit" ,"256M" );79 /**80 * Directory Node81 * @package HTML_TreeMenu82 */83 class DirNode extends HTML_TreeNode84 {85 /**86 * full path to this node87 * @var string 88 */89 var $path;90 91 function DirNode($text = false, $link = false, $icon = false, $path, $events = array())92 {93 $this-> path = $path;94 $options = array();95 if ($text) $options['text'] = $text;96 if ($link) $options['link'] = $link;97 if ($icon) $options['icon'] = $icon;98 HTML_TreeNode::HTML_TreeNode($options,$events);99 }100 }101 102 function getDir($path,& $node)103 {104 global $pd105 if (!$dir = opendir($path)) return;106 107 $node = new HTML_TreeNode(array('text' => basename(realpath($path)), 'link' =>"" , 'icon' => 'folder.gif'));108 while (($file = readdir($dir)) !== false)109 {110 if ($file != '.' && $file != '..')111 {112 if (is_dir(" $path$pd$file") &&!is_link(" $path$pd$file"))113 {114 $entry[] = " $path$pd$file";115 }116 }117 }118 closedir($dir);119 for($i = 0; $i < count($entry); $i++)120 {121 $node-> addItem(newHTML_TreeNode(array('text'=> basename(realpath($entry[$i])), 'link' =>"javascript:setHelp('" .addslashes(realpath($entry[$i]))."');" , 'icon' =>'folder.gif')));122 }123 }124 125 function recurseDir($path, & $node) {126 global $pd127 if (!$dir = opendir($path)) {128 return false;129 }130 $anode = new HTML_TreeNode(array('text' => basename($path), 'link' =>"javascript:setHelpVal('" .$path."');" , 'icon' => 'folder.gif'));131 $result = addslashes(realpath(stripslashes($path).$pd.".." ));132 if (!$node) $anode-> addItem(newDirNode('..',"javascript:setHelp('" .$result."');" ,'folder.gif'),'..');133 while (($file = readdir($dir)) !== false) {134 if ($file != '.' && $file != '..') {135 if (is_dir(" $path$pd$file")) {136 recurseDir(" $path$pd$file", $anode);137 }138 }

Page 716 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 764: PhpDocumentor 1.2.2 Manual

139 }140 rewinddir($dir);//141 while (false){//($file = readdir($dir)) !== false) {142 if ($file != '.' && $file != '..') {143 if (is_file(" $path$pd$file")) {144 $anode-> addItem(newDirNode($file," javascript:setHelpVal('$path$pd$file');", 'branchtop.gif'," $path$pd$file&quot;));145 }146 }147 }148 if (!$node) $node = $anode;149 else150 $node-> addItem($anode);151 closedir($dir);152 }153 154 function switchDirTree($path, & $node)155 {156 global $pd157 158 // initialize recursion simulation values159 // array format: path => &parent in $node itemlist160 $parent = array();161 $parent_indexes = array();162 $parenti = 1;163 164 $node = newDirNode(basename($path),"javascript:setHelpVal('" .$path."');" ,'folder.gif',$path);165 $result = addslashes(realpath($path.$pd.".." ));166 $node-> addItem(newDirNode('..',"javascript:setHelp('" .$result."');" ,'folder.gif','..'));167 $rnode = & $node;168 $parent[realpath($path)] = false;169 $recur = 0;170 do171 {172 if ($recur++ > 120) return;173 if (!$dir = @opendir($path)) {174 // no child files or directories175 // echo "$path no child files or directories return to ";176 $rnode = & $parent[realpath($path)];177 $path = $rnode-> path;178 if (isset($parent_indexes[realpath($path)])) $parenti =$parent_indexes[realpath($path)];179 // echo "$path parenti $parenti<br>";180 }181 // fancy_debug($path,$parent_indexes);182 // vdump_par($parent);183 if (!isset($parent_indexes[realpath($path)]))184 {185 $file = readdir($dir);186 while ($file !== false) {187 if ($file != '.' && $file != '..') {188 if (@is_dir(realpath(" $path$pd$file"))) {189 if (!isset($parent_indexes[realpath($path)]))$parent_indexes[realpath($path)] = true;190 $parent[realpath(" $path$pd$file")] = & $rnode;191 // echo "<br>adding new".addslashes(realpath($path.$pd.$file))." to $path<br>";192 $rnode-> addItem(newDirNode(addslashes(realpath(" $path$pd$file")), "javascript:setHelpVal('" .addslashes(realpath($path.$pd.$file))."');" ,'folder.gif',addslashes(realpath($path.$pd.$file))));193 }194 }195 $file = readdir($dir);196 }197 }198 // go down the tree if possible199 if (isset($parent_indexes[realpath($path)]))200 {201 if ($parenti + 1 > ( count($rnode-> items)))202 {203 // no more children, go back up to parent204 // echo "$path no more children, go back up to parent ";205 $rnode = & $parent[realpath($path)];206 $path = $rnode-> path;207 if (isset($parent_indexes[realpath($path)])) $parenti =$parent_indexes[realpath($path)];208 // echo $path." parenti $parenti<br>";

Page 717 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 765: PhpDocumentor 1.2.2 Manual

209 } else210 {211 // go to next child212 // echo "$path go to next child ";213 $parent_indexes[realpath($path)] = $parenti+1;214 // debug("set parent ".$rnode->items[$parenti]->path."= ".$rnode->path.'<br>');215 $parent[realpath($rnode-> items[$parenti]-> path)] = & $rnode;216 $rnode = & $rnode-> items[$parenti];217 $path = $rnode-> path;218 // echo "$path<br>";219 $parenti = 0;220 }221 } else222 {223 // no children, go back up the tree to the next child224 // echo "$path no children, go back up to parent ";225 $rnode = & $parent[realpath($path)];226 $path = $rnode-> path;227 if (isset($parent_indexes[realpath($path)])) $parenti =$parent_indexes[realpath($path)];228 // echo "$path parenti $parenti<br>";229 }230 @closedir($dir);231 } while ($path && (( $parenti < ( count($rnode-> items))) ||($parent[realpath($path)] !== false)));232 }233 234 function vdump_par($tree)235 {236 foreach($tree as $key => $val)237 {238 if ($val === false)239 debug($key.' -> false<br>' );240 else241 debug($key.' -> ' .$val-> path.'<br>' );242 }243 debug('<br>' );244 }245 246 $menu = new HTML_TreeMenu();247 $filename = '';248 if (isset($_GET) && isset( $_GET['fileName'])) $filename = $_GET['fileName'];249 $filename = realpath($filename);250 $pd = (substr(PHP_OS, 0, 3) == 'WIN') ? '\\' : '/';251 $test = ($pd == '/') ? '/' : 'C:\\';252 if (empty($filename) || ($filename == $test))253 {254 $filename = ($pd == '/') ? '/' : 'C:\\';255 $node = false;256 getDir($filename,$node);257 } else258 {259 flush();260 // if ($pd != '/') $pd = $pd.$pd;261 $anode = false;262 switchDirTree($filename,$anode);263 // recurseDir($filename,$anode);264 $node = new HTML_TreeNode(array('text' => " Click to view $filename", 'link'=> "" ,'icon' => 'branchtop.gif'));265 $node-> addItem($anode);266 };267 $menu-> addItem($node);268 $DHTMLmenu = & new HTML_TreeMenu_DHTML($menu, array('images' => 'HTML_TreeMenu-1.1.2/images'));269 ?>270 <script type="text/javascript" language="Javascript">271 /**272 Creates some global variables273 */274 function initializate() {275 //276 //The "platform independent" newLine277 //278 //Taken from http://developer.netscape.com/docs/manuals/communicator/jsref/brow1.htm#1010426279 if (navigator.appVersion.lastIndexOf('Win') != -1)280 {281 $pathdelim="\\";282 $newLine="\r\n";283 } else

Page 718 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 766: PhpDocumentor 1.2.2 Manual

284 {285 $newLine="\n";286 $pathdelim="/";287 }288 /* for($a=0;$a<document.dataForm.elements.length;$a++) {289 alert("The name is '"+document.dataForm.elements[$a].name+"' "+$a);290 }291 */292 }293 /** Sets the contents of the help box, and submits the form294 */295 function setHelp($str)296 {297 document.helpForm.fileName.value = $str;298 document.helpForm.helpdata.click();299 }300 301 /** Sets the contents of the help box only302 */303 function setHelpVal($str)304 {305 document.helpForm.fileName.value = $str;306 }307 /**Adds the contents of the help box as a directory308 */309 function addDirectory($object) {310 $a = document.helpForm.fileName.value;311 $a = myReplace($a,'\\\\','\\');312 if ($a[$a.length - 1] == $pathdelim) $a = $a.substring(0, $a.length - 1);313 if ($a.lastIndexOf('.') > 0)314 {315 $a = $a.substring(0,$a.lastIndexOf($pathdelim));316 }317 $object.value = prepareString($object.value)+$a;318 }319 /**Adds the contents of the converter box to the converters list320 */321 function addConverter($object) {322 $object.value = prepareString($object.value)+document.dataForm.ConverterSetting.value;323 }324 /**Replaces the converters list with the contents of the converter box325 */326 function replaceConverter($object) {327 $object.value = document.dataForm.ConverterSetting.value;328 }329 /**Adds the contents of the help box as a file to the given control330 */331 function addFile($object) {332 $a = document.helpForm.fileName.value;333 $a = myReplace($a,'\\\\','\\');334 $object.value = prepareString($object.value)+$a;335 }336 /**Takes a given string and leaves it ready to add a new string337 That is, puts the comma and the new line if needed338 */339 function prepareString($myString) {340 //First verify that a comma is not at the end341 if($myString.lastIndexOf(",") >= $myString.length-2) {342 //We have a comma at the end343 return $myString;344 }345 if($myString.length > 0) {346 $myString+=","+$newLine;347 }348 return $myString;349 }350 /**Do the validation needed before sending the from and return a truth value indicating if the formcan be sent351 */352 function validate() {353 //Take out all newLines and change them by nothing354 //This could be done by using javascript function's replacebut that was implemented only untilNavigator 4.0 and so it is better to use more backward compatible functions like substr 355 document.dataForm.elements[0].value= stripNewLines(document.dataForm.elements[0].value);356 document.dataForm.elements[1].value= stripNewLines(document.dataForm.elements[1].value);357 document.dataForm.elements[2].value= stripNewLines(document.dataForm.elements[2].value);358 document.dataForm.elements[3].value= stripNewLines(document.dataForm.elements[3].value);359 document.dataForm.elements[4].value= stripNewLines(document.dataForm.elements[4].value);360 document.dataForm.elements[5].value= stripNewLines(document.dataForm.elements[5].value);361 document.dataForm.elements[6].value= stripNewLines(document.dataForm.elements[6].value);

Page 719 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 767: PhpDocumentor 1.2.2 Manual

362 document.dataForm.elements[7].value= stripNewLines(document.dataForm.elements[7].value);363 //By returning true we are allowing the form to be submitted364 return true;365 }366 /**Takes a string and removes all the ocurrences of new lines367 Could have been implemented a lot easier with replace but it's not very backwards compatible368 */369 function stripNewLines($myString) {370 return myReplace($myString,$newLine,'');371 }372 function myReplace($string,$text,$by) {373 // Replaces text with by in string374 var $strLength = $string.length, $txtLength = $text.length;375 if (($strLength == 0) || ($txtLength == 0)) return $string;376 377 var $i = $string.indexOf($text);378 if ((!$i) && ($text != $string.substring(0,$txtLength))) return $string;379 if ($i == -1) return $string;380 381 var $newstr = $string.substring(0,$i) + $by;382 383 if ($i+$txtLength < $strLength)384 $newstr += myReplace($string.substring($i+$txtLength,$strLength),$text,$by);385 386 return $newstr;387 }388 </script><?php } ?>389 </head>390 <?php391 //Find out if we are submitting and if we are, send it392 // This code originally by Joshua Eichorn on phpdoc.php393 //394 if(isset($_GET['submit']) && empty( $_REQUEST['altuserdir'])) {395 echo "<body bgcolor=\"#ffffff\">" ;396 echo "<h1>Parsing Files ...</h1>" ;397 flush();398 echo "<pre>\n" ;399 /** phpdoc.inc */399 400 include("phpDocumentor/phpdoc.inc" );401 echo "</pre>\n" ;402 echo "<h1>Operation Completed!!</h1>" ;403 } else404 {405 ?>406 <body bgcolor="#ffffff" onload="javascript:initializate()">407 <h1>408 phpDocumentor v<?php print PHPDOCUMENTOR_VER; ?> Web Interface409 </h1>410 phpDocumentor written by Joshua Eichorn<br>411 Web Interface written by Juan Pablo Morales and enhanced by Greg Beaver<br>412 <img src="poweredbyphpdoc.gif" alt="" width="88"height="31" border="0">413 <table cellpadding="1" cellspacing="1" border="0"width="60%" bgcolor=414 "#000000">415 <tr>416 <td bgcolor="#ffff66">417 <b>Help</b> 418 </td>419 <td bgcolor="#ffff99">420 use this to find directories and files which can be used below421 <form name="helpForm" action="<?php print$_SERVER['PHP_SELF']; ?>" method="get"422 enctype="multipart/form-data">423 <input size="80" type="text"name="fileName" value="<?php print $filename;?>">424 <input type="submit" name="helpdata" value="browsetree">425 </form>426 <div id='menuLayer'></div>427 <?php428 $DHTMLmenu-> printMenu();429 ?>430 </td>431 </tr>432 </table>433 434 <form name="dataForm" action="<?php print $_SERVER['PHP_SELF'];?>" method="GET" onsubmit=

Page 720 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 768: PhpDocumentor 1.2.2 Manual

435 "return validate()">436 <table cellpadding="3" cellspacing="3" border="0"width="80%"437 bgcolor="#000000">438 <tr>439 <td bgcolor="#3399ff">440 <b>Use a pre-created config file for form values.</b> 441 </td>442 <td bgcolor="#CCCCCC">443 Normally, phpDocumentor uses the form values from this form to set upparsing. In version 1.2,444 phpDocumentor allows you to "save" form values in configurationfiles so that you can replicate445 common complicated documentation tasks with only one time. Just choose aconfig file below or create a446 new one and refresh this page to choose it.<hr /><b>changeconfig directory:</b><input size="20" type="text"name="altuserdir" value=""><?php if (!empty($_REQUEST['altuserdir'])) print'<br><i>changed to <b>"' .$_REQUEST['altuserdir'].'"</b></i>' ;?>447 <b>Choose a config:</b> <select name="setting[useconfig]">448 <option value="" <?php if(empty($_REQUEST['altuserdir'])) print 'selected'; ?>>don't use config file</option>449 <?php450 $dirs = array();451 $dirs = phpDocumentor_ConfigFileList($configdir);452 $path = '';453 $sel = ' selected';454 if (!empty($_REQUEST['altuserdir'])) $path = $configdir . PATH_DELIMITER;455 else $sel = '';456 foreach($dirs as $configfile)457 {458 print '<optionvalue="' .$path.$configfile.'"' .$sel.'>' .$configfile.".ini</option>\n" ;459 $sel = '';460 }461 ?>462 </select><input type="SUBMIT" value=463 "Go" name="submitButton"><br>464 </td>465 </tr>466 </tr>467 <td bgcolor="#66cc66">468 <b>Target</b> 469 </td>470 <td bgcolor="#eeeeee">471 Target is the directory where472 the output produced by phpDocumentor will reside<br>473 <input type="TEXT" name="setting[target]" size=474 "80"><br>475 <a href=476 "javascript:addDirectory(document.dataForm.elements[3])">477 Add the directory in the help box</a> 478 </td>479 </tr>480 <tr>481 <td bgcolor="#3399ff">482 <b>Files to parse</b> 483 </td>484 <td bgcolor="#CCCCCC">485 This is a group of comma-separated names of php files486 or tutorials that will be processed by phpDocumentor.<br>487 <textarea rows="6" cols="80" name=488 "setting[filename]"></textarea> <br>489 <a href=490 "javascript:addFile(document.dataForm.elements[4])">491 Add the file in the help box</a> 492 </td>493 </tr>494 <tr>495 <td bgcolor="#66cc66">496 <b>Directory to parse</b> 497 </td>498 <td bgcolor="#eeeeee">499 This is a group of comma-separated directories where php files500 or tutorials are found that will be processed by phpDocumentor.501 phpDocumentor automatically parses subdirectories<br>502 <textarea rows="6" cols="80"name="setting[directory]"></textarea> <br>503 <a href=

Page 721 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 769: PhpDocumentor 1.2.2 Manual

504 "javascript:addDirectory(document.dataForm.elements[5])">505 Add the directory in the help box</a> 506 </td>507 </tr>508 <tr>509 <td bgcolor="#66cc66">510 <b>Files to ignore</b> 511 </td>512 <td bgcolor="#eeeeee">513 A list of files (full path or filename), and patterns514 to ignore. Patterns may use wildcards * and ?. To515 ignore all subdirectories named "test" for example,516 using "test/" To ignore all files and directories517 with test in their name use "*test*"518 <textarea rows="6" cols="80"name="setting[ignore]"></textarea> <br>519 <a href=520 "javascript:addDirectory(document.dataForm.elements[6])">521 Add the directory in the help box</a> 522 </td>523 </tr>524 <tr>525 <td bgcolor="#66cc66">526 <b>Generated Documentation Title</b> 527 </td>528 <td bgcolor="#eeeeee">529 Choose a title for the generated documentation<br>530 <input type="TEXT" name="setting[title]" size=531 "80" value="Generated Documentation"><br>532 </td>533 </tr>534 <tr>535 <td bgcolor="#3399ff">536 <b>Default Package Name</b> 537 </td>538 <td bgcolor="#cccccc">539 Choose a name for the default package<br>540 <input type="TEXT" name="setting[defaultpackagename]"size=541 "80" value="default"><br>542 </td>543 <tr>544 <tr>545 <td bgcolor="#3399ff">546 <b>Custom Tags</b> 547 </td>548 <td bgcolor="#CCCCCC">549 Custom Tags is a comma-separated list of tags550 you want phpDocumentor to include as valid tags551 in this parse. An example would be "value, size"552 to allow @value and @size tags.553 <input type="TEXT" name="setting[customtags]" size=554 "80"><br>555 </td>556 </tr>557 <tr>558 <td bgcolor="#66cc66">559 <b>Packages to parse</b> 560 </td>561 <td bgcolor="#eeeeee">562 The parameter packages is a group of comma563 separated names of abstract packages that will564 be processed by phpDocumentor. All package names must be565 separated by commas.<br>566 <textarea rows="3" cols="80" name=567 "setting[packageoutput]"></textarea> <br>568 </td>569 </tr>570 <tr>571 <td bgcolor="#3399ff">572 <b>Output Information</b> 573 </td>574 <td bgcolor="#CCCCCC">575 <br>576 Outputformat577 may be HTML, XML, PDF, or CHM (case-sensitive) in version 1.2. There is onlyone Converter578 for both CHM and PDF, <b>default</b>. There are 2 HTML Converters,579 <b>frames</b> and <b>Smarty</b>. <b>framestemplates</b> may be any of:<br><br>

Page 722 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 770: PhpDocumentor 1.2.2 Manual

580 <b>default, l0l33t, phpdoc.de, phphtmllib, phpedit, DOM/default,DOM/l0l33t, or DOM/phpdoc.de</b>.581 <b>Smarty templates</b> may be anyof:<br><br>582 <b>default or PHP</b>.<br>583 <br>584 There is only 1 template for all other Converters, <b>default</b>585 <br>Output type:Converter name:template name <input type=586 "TEXT" name="setting[output]" value=587 "HTML:Smarty:default" size="80"><br>588 <select name="ConverterSetting">589 <option value="HTML:frames:default">HTML:frames:default</option>590 <option value="HTML:frames:l0l33t">HTML:frames:l0l33t</option>591 <option value="HTML:frames:phpdoc.de">HTML:frames:phpdoc.de</option>592 <option value="HTML:frames:phphtmllib">HTML:frames:phphtmllib</option>593 <option value="HTML:frames:phpedit">HTML:frames:phpedit</option>594 <option value="HTML:frames:DOM/default">HTML:frames:DOM/default</option>595 <option value="HTML:frames:DOM/l0l33t">HTML:frames:DOM/l0l33t</option>596 <option value="HTML:frames:DOM/phpdoc.de">HTML:frames:DOM/phpdoc.de</option>597 <option value="HTML:Smarty:default" SELECTED>HTML:Smarty:default</option>598 <option value="PDF:default:default">PDF:default:default</option>599 <option value="CHM:default:default">CHM:default:default</option>600 <optionvalue="XML:DocBook/peardoc2:default">XML:DocBook/peardoc2:default</option>601 </select><br>602 <a href=603 "javascript:addConverter(document.dataForm.elements[11])">604 Add the converter in the help box</a> <br>605 <a href=606 "javascript:replaceConverter(document.dataForm.elements[11])">607 Use ONLY the converter in the help box</a> 608 </td>609 </tr>610 <tr>611 <td bgcolor="#3399ff">612 <b>Parse @access private</b> 613 </td>614 <td bgcolor="#CCCCCC">615 The parameter Parse @access private tells phpDocumentor616 whether to parse elements with an "@access private" tag in theirdocblock<br>617 <input type="checkbox" name="setting[parseprivate]"value="on">Parse private <br>618 </td>619 </tr>620 <tr>621 <td bgcolor="#66cc66">622 <b>JavaDoc-compliant Description parsing.</b> 623 </td>624 <td bgcolor="#eeeeee">625 Normally, phpDocumentor uses several rules to determine the shortdescription. This switch626 asks phpDocumentor to simply search for the first period (.) and use it todelineate the short627 description. In addition, the short description will not be separated fromthe long description<br>628 <input type="checkbox" name="setting[javadocdesc]"value="on">JavaDoc-compliant Description <br>629 </td>630 </tr>631 </table>632 <input type="HIDDEN" name="interface" value="web"><input type=633 "HIDDEN" name="submit" value="true"> <inputtype="SUBMIT" value=634 "Create Documentation" name="submitButton">635 </form>636 <br>637 <br>638 <br>639 <p>640 Joshua Eichorn <ahref="mailto:[email protected]">[email protected]</a><br>641 Juan Pablo Morales <a href=642 "mailto:[email protected]">[email protected]</a><br>643 Gregory Beaver <a href=644 "mailto:[email protected]">[email protected]</a>645 </p>646 <p>647 If you have any problems with phpDocumentor, please visit the website: <a

Page 723 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 771: PhpDocumentor 1.2.2 Manual

648 href='http://phpdocu.sourceforge.net'>phpdocu.sourceforge.net</a> and649 submit a bug650 </p>651 <!-- Created: Tue Jun 26 18:52:40 MEST 2001 -->652 <!-- hhmts start -->653 <pre>654 Last modified: $Date: 2003/06/03 05:00:44 $655 Revision: $Revision: 1.16.2.1 $656 </pre>657 <!-- hhmts end -->658 <?php } //End the else that prints all code659 ?>660 </body>661 </html>

Page 724 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 772: PhpDocumentor 1.2.2 Manual

Appendix D - Todo List

In Package Converters

In XMLDocBookpeardoc2Converter::endClass():

move class summary into an array to be written out at the end of parsing each package

In CHMdefaultConverter::Output():

use to directly call html help compiler hhc.exe

In PDFdefaultConverter:

Implement links to conflicts/inheritance

In XMLDocBookConverter:

indexes for other DocBook converters not based on peardoc templates

Page 725 of 725Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 773: PhpDocumentor 1.2.2 Manual

Index

http://phpdocu.sourceforge.net Manual 32 http://phpdocu.sourceforge.net Tutorial 3

@@since 61@static 62@see 59@return 57@package 53@param 55@staticvar 63@subpackage 64@var 72@version 73@uses 69@tutorial 67@todo 66@name 52@link 51@copyright 40@deprecated 41@category 39@author 38@access 37@example 42@final 44@internal 49@license 50@ignore 48@global 46@filesource 45@abstract 36

AabstractLink::$path 250abstractLink::$package 250abstractLink::$name 249abstractLink::$subpackage 250abstractLink::$type 250

element type linked to.

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 774: PhpDocumentor 1.2.2 Manual

adv_htmlentities() 366smart htmlentities, doesn't entity the allowed tags list

abstractLink::addLink() 250abstractLink::$fileAlias 249

phpdoc alias _phpdoc_inc for phpdoc.incabstractLink::$category 249addToCVS() 147

Recursively add files to cvsadd_cvs.php 147

CVS file adding iteratoraddError() 225addErrorDie() 225

like addError() but exits parsingabstractLink 249

linking classes parentaddWarning() 226actions.php 123

Bbuilder.php 688

Source codeblock.textformat.php 582

Smarty pluginblock.strip.php 581

Smarty pluginbuilder.php 124

Advanced Web Interface to phpDocumentor

CCezpdf::$ezPages 519Cezpdf::$y 519Cezpdf::$ezPageCount 519Cezpdf::$ez 519class.ezpdf.php 518Cezpdf 519

This class will take the basic interaction facilities of the Cpdf class and make more useful functions so that the user does not have to know all the ins and outs of pdf presentation to produce something pretty.

constructor Cezpdf::Cezpdf() 519Cezpdf::alink() 519Cezpdf::ezImage() 520Cezpdf::ezInsertMode() 520Cezpdf::ezGetCurrentPageNumber() 520Cezpdf::ezColumnsStop() 520Cezpdf::execTemplate() 520Cezpdf::ezColumnsStart() 520constructor XMLDocBookpeardoc2Converter::XMLDocBookpeardoc2Converter() 504

sets $base_dir to $targetDirconstructor XMLDocBookConverter::XMLDocBookConverter() 488

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 775: PhpDocumentor 1.2.2 Manual

sets $base_dir to $targetDirCSVdia2codeConverter::setTemplateDir() 433CSVdia2codeConverter::unmangle() 433CSVdia2codeConverter::returnSee() 433CSVdia2codeConverter::returnLink() 433CSVdia2codeConverter::mystrnatcasecmp() 432CSVdia2codeConverter::Output() 432

calls Cezpdf::ezOutput() and writes documentation.pdf to targetDirCSVdia2codeConverter::writeExample() 433CSVdia2codeConverter::writeSource() 433constructor PDFParser::PDFParser() 479

Sets up the wordparser for this classconstructor phpdocpdf::phpdocpdf() 481constructor PDFdefaultConverter::PDFdefaultConverter() 473class.phpdocpdf.php 468

Helper class, extension to ezpdfconstructor HTMLframesConverter::HTMLframesConverter() 437

sets $base_dir to $targetDirconstructor HTMLSmartyConverter::HTMLSmartyConverter() 454Cezpdf::ezNewPage() 520Cezpdf::ezOutput() 520Cezpdf::uline() 520Cpdf 520

CpdfCezpdf::loadTemplate() 520Cezpdf::ilink() 520Cezpdf::ezText() 520Cezpdf::ezWhatPageNumber() 520Cpdf::$addLooseObjects 521

array contains infomation about how the loose objects are to be added to the documentCpdf::$arc4 521

the ancryption array for the document encryption is stored hereCpdf::$currentBaseFont 522

the current base fontCpdf::$currentColour 522

current colour for fill operations, defaults to inactive value, all three components should bebetween 0 and 1 inclusive when active

Cpdf::$checkpoint 521store the stack for the transaction commands, each item in here is a record of the values of allthe variables within the class, so that the user can rollback at will (from each 'start' command) note that this includes the objects array, so these can be large.

Cpdf::$catalogId 521the objectId (number within the objects array) of the document catalog

Cpdf::$arc4_objnum 521the object Id of the encryption information

Cpdf::$callback 521array which forms a stack to keep track of nested callback functions

Cezpdf::ezTable() 520Cezpdf::ezStream() 520Cezpdf::ezPRVTpageNumberSearch() 520Cezpdf::ezPrvtTableColumnHeadings() 520Cezpdf::ezPrvtGetTextWidth() 520

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 776: PhpDocumentor 1.2.2 Manual

Cezpdf::ezPRVTcleanUp() 520Cezpdf::ezProcessText() 520Cezpdf::ezPRVTaddPageNumbers() 520Cezpdf::ezPrvtTableDrawLines() 520Cezpdf::ezSetCmMargins() 520Cezpdf::ezStartPageNumbers() 520Cezpdf::ezStopPageNumbers() 520Cezpdf::ezSetY() 520Cezpdf::ezSetMargins() 520Cezpdf::ezSetDy() 520CSVdia2codeConverter::getVarLink() 432CSVdia2codeConverter::getTutorialId() 432CHMdefaultConverter::setTargetDir() 430

calls the converter setTargetDir, and then copies any template images and the stylesheet ifthey haven't been copied

CHMdefaultConverter::setTemplateDir() 430CHMdefaultConverter::returnSee() 430

This function takes an abstractLink descendant and returns an html linkCHMdefaultConverter::returnLink() 429CHMdefaultConverter::rcNatCmp() 429

does a nat case sort on the specified second level value of the arrayCHMdefaultConverter::rcNatCmp1() 429

does a nat case sort on the specified second level value of the array.CHMdefaultConverter::SmartyInit() 430CHMdefaultConverter::unmangle() 430CSVdia2codeConverter 431

CSV output converter.CSVdia2codeConverter::$csv_array 431CHMdefaultConverter::writeSource() 431CHMdefaultConverter::writeNewPPage() 431CHMdefaultConverter::writeExample() 430CHMdefaultConverter::writefile() 430

Write a file to disk, and add it to the $hhp_files list of files to include in the generated CHM

CHMdefaultConverter::ProgramExample() 429Used to convert the <<code>> tag in a docblock

CHMdefaultConverter::postProcess() 429Uses htmlspecialchars() on the input

CHMdefaultConverter::getMethodLink() 426CHMdefaultConverter::getPageLink() 427CHMdefaultConverter::getIndexInformation() 426

Generate indexing information for given elementCHMdefaultConverter::getId() 426CHMdefaultConverter::getFunctionLink() 425CHMdefaultConverter::getGlobalLink() 425CHMdefaultConverter::getPageName() 427CHMdefaultConverter::getRootTree() 427

return formatted class tree for the Class Trees pageCHMdefaultConverter::getVarLink() 428CHMdefaultConverter::Output() 428

Create the phpdoc.hhp, contents.hhc files needed by MS HTML Help Compiler to create a CHM file

CHMdefaultConverter::getTutorialId() 428

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 777: PhpDocumentor 1.2.2 Manual

CHMdefaultConverter::getSourceLink() 428CHMdefaultConverter::getSourceAnchor() 427

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a @filesource tag.

CSVdia2codeConverter::$name 431CSVdia2codeConverter::$output 431CSVdia2codeConverter::getDefineLink() 432CSVdia2codeConverter::getExampleLink() 432CSVdia2codeConverter::getcsv() 432CSVdia2codeConverter::getClassLink() 432CSVdia2codeConverter::generateFormattedClassTrees() 432CSVdia2codeConverter::getCData() 432CSVdia2codeConverter::getFunctionLink() 432CSVdia2codeConverter::getGlobalLink() 432CSVdia2codeConverter::getSourceLink() 432CSVdia2codeConverter::getState() 432CSVdia2codeConverter::getRootTree() 432CSVdia2codeConverter::getPageName() 432CSVdia2codeConverter::getMethodLink() 432CSVdia2codeConverter::getPageLink() 432CSVdia2codeConverter::Convert_RIC() 432CSVdia2codeConverter::convertVar() 432CSVdia2codeConverter::ConvertErrorLog() 432

Create errors.html template file outputCSVdia2codeConverter::convertFunction() 432CSVdia2codeConverter::convertDocBlock() 432CSVdia2codeConverter::convertDefine() 432constructor CSVdia2codeConverter::CSVdia2codeConverter() 431CSVdia2codeConverter::convertClass() 432CSVdia2codeConverter::convertGlobal() 432CSVdia2codeConverter::convertInclude() 432CSVdia2codeConverter::convertParams() 432CSVdia2codeConverter::convertTutorial() 432CSVdia2codeConverter::convertPage() 432CSVdia2codeConverter::convertPackagepage() 432CSVdia2codeConverter::convertMethod() 432Cpdf::$currentContents 522

object number of the currently active contents blockCpdf::$currentFont 522

a record of the current fontCpdf::selectFont() 531

if the font is not loaded then load it and make the required objectCpdf::setColor() 531

sets the colour for fill operationsCpdf::saveState() 531

this will be called at a new page to return the state to what it was on theCpdf::restoreState() 531

restore a previously saved stateCpdf::rectangle() 531

draw a rectangle, note that it is the width and height of the rectangle which are the secondaryparamaters, not

Cpdf::reopenObject() 531open an existing object for editing

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 778: PhpDocumentor 1.2.2 Manual

Cpdf::setEncryption() 532set the encryption of the document can be used to turn it on and/or set the passwords which it will have.

Cpdf::setFontFamily() 532define font families, this is used to initialize the font families for the default fonts and for the user to add new ones for their fonts. The default bahavious can be overriddenshould that be desired.

Cpdf::stream() 532output the pdf code, streaming it to the browser

Cpdf::transaction() 532a few functions which should allow the document to be treated transactionally.

Cpdf::stopObject() 532stop an object from appearing on pages from this point on

Cpdf::setStrokeColor() 532sets the colour for stroke operations

Cpdf::setLineStyle() 532this sets the line drawing style.

Cpdf::setPreferences() 532set the viewer preferences of the document, it is up to the browser to obey these.

Cpdf::polygon() 531draw a polygon, the syntax for this is similar to the GD polygon command

Cpdf::partEllipse() 531draw a part of an ellipse

Cpdf::o_font() 530an object to hold the font description

Cpdf::o_fontDescriptor() 530a font descriptor, needed for including additional fonts

Cpdf::o_encryption() 530encryption object.

Cpdf::o_destination() 530destination object, used to specify the location for the user to jump to, presently on opening

Cpdf::o_catalog() 530define the document catalog, the overall controller for the document

Cpdf::o_contents() 530the contents objects hold all of the content which appears on pages

Cpdf::o_fontEncoding() 530the font encoding

Cpdf::o_image() 530an image object, will be an XObject in the document, includes description and data

Cpdf::o_procset() 531the document procset, solves some problems with printing to old PS printers

Cpdf::o_viewerPreferences() 531set the viewer preferences

Cpdf::o_pages() 530object which is a parent to the pages in the document

Cpdf::o_page() 530a page object, it also creates a contents object to hold its contents

Cpdf::o_info() 530define the document information

Cpdf::o_outlines() 530define the outlines in the doc, empty for now

constructor DirNode::DirNode() 536

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 779: PhpDocumentor 1.2.2 Manual

constructor HTML_TreeMenu::HTML_TreeMenu() 537Constructor

Config_File::load_file() 555Load a configuration file manually.

Config_File::set_path() 555Set the path where configuration files can be found.

Config_File::get_var_names() 554Get all global or section variable names.

Config_File::get_section_names() 554Get all section names from a loaded file.

Config_File::get_file_names() 554Get all loaded config file names.

Config_File::get_key() 554Retrieves config info based on the key.

Config_File::_parse_config_block() 555Config_File::_set_config_var() 555config.php 690

Source codecommon.inc.php 707

Source codeChangeLog 647constructor Smarty_Compiler::Smarty_Compiler() 573

The class constructor.Config_File::_trigger_error_msg() 555constructor Smarty::Smarty() 564

The class constructor.Config_File::get() 553

Retrieves config info based on the file, section, and variable name.Config_File::clear() 553

Clear loaded config data for a certain file or all files.Config_File.class.php 548

Config_File class.Config_File 552

Config file reading classconstructor HTML_TreeNode::HTML_TreeNode() 544

Constructorconstructor HTML_TreeMenu_Presentation::HTML_TreeMenu_Presentation() 542

Base constructor simply sets the menu objectconstructor HTML_TreeMenu_DHTML::HTML_TreeMenu_DHTML() 539

Constructor, takes the tree structure asconstructor HTML_TreeMenu_Listbox::HTML_TreeMenu_Listbox() 541

ConstructorConfig_File::$booleanize 552

Controls whether config values of on/true/yes and off/false/no get converted to boolean values automatically.

Config_File::$fix_newlines 552Controls whether or not to fix mac or dos formatted newlines.

Config_File::$_separator 553constructor Config_File::Config_File() 553

Constructs a new config file class.Config_File::$_config_data 553Config_File::$read_hidden 553

Controls whether hidden config sections/vars are read from the file.

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 780: PhpDocumentor 1.2.2 Manual

Config_File::$overwrite 552Controls whether variables with the same name overwrite each other.

Cpdf::o_annotation() 529an annotation object, this will add an annotation to the current page.

Cpdf::o_action() 529an action object, used to link to URLS initially

Cpdf::$numFonts 525number of fonts within the system

Cpdf::$numImages 525number of images being tracked within the document

Cpdf::$nStateStack 525number of elements within the state stack

Cpdf::$nStack 525number of elements within the object Id storage stack

Cpdf::$messages 524messages are stored here during processing, these can be selected afterwards to give someuseful debug information

Cpdf::$nCallback 524the number of callback functions in the callback array

Cpdf::$numObj 525the current number of pdf objects in the document

Cpdf::$numPages 525number of page objects within the document

Cpdf::$stateStack 526an array which is used to save the state of the document, mainly the colours and styles

Cpdf::$wordSpaceAdjust 526used to track the last used value of the inter-word spacing, this is so that it is known when the spacing is changed.

Cpdf::$stack 526object Id storage stack

Cpdf::$procsetObjectId 526the object Id of the procset object

Cpdf::$objects 525this array contains all of the pdf objects, ready for final assembly

Cpdf::$options 525an array containing options about the document

Cpdf::$looseObjects 524an array which contains information about the objects which are not firmly attached to pages

Cpdf::$infoObject 524the objectId of the information object for the document this contains authorship, title etc.

Cpdf::$currentStrokeColour 523current colour for stroke operations (lines etc.)

Cpdf::$currentTextState 523track if the current font is bolded or italicised

Cpdf::$currentPage 522object number of the current page

Cpdf::$currentNode 522Cpdf::$currentFontNum 522

the number of the current font within the font arrayCpdf::$currentLineStyle 522

current style that lines are drawn inCpdf::$destinations 523

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 781: PhpDocumentor 1.2.2 Manual

store label->id pairs for named destinations, these will be used to replace internal linksCpdf::$encrypted 523

a flag to say if a document is to be encrypted or notCpdf::$fontFamilies 524

store the information about the relationship between font families this used so that the code knows which font is the bold version of another font, etc.

Cpdf::$fonts 524array carrying information about the fonts that the system currently knows about

Cpdf::$firstPageId 523the objectId of the first page of the document

Cpdf::$fileIdentifier 523the file identifier, used to uniquely identify a pdf document

Cpdf::$encryptionKey 523the ancryption key for the encryption of all the document content (structure is not encrypted)

constructor Cpdf::Cpdf() 526class constructor

Cpdf::addDestination() 526create a labelled destination within the document

Cpdf::getFirstPageId() 528function for the user to find out what the ID is of the first page that was created during startup - useful if they wish to add something to it later.

Cpdf::getFontDecender() 528return the font decender, this will normally return a negative number

Cpdf::filledRectangle() 528a filled rectangle, note that it is the width and height of the rectangle which are the secondaryparamaters, not

Cpdf::filledEllipse() 528draw a filled ellipse

Cpdf::ellipse() 528draw an ellipse note that the part and filled ellipse are just special cases of this function

Cpdf::encryptInit() 528initialize the encryption for processing a particular object

Cpdf::getFontHeight() 529return the height in units of the current font in the given size

Cpdf::getTextWidth() 529calculate how wide a given text string will be on a page, at a given size.

Cpdf::openObject() 529make a loose object, the output will go into this object, until it is closed, then will revert to the current one.

Cpdf::output() 529return the pdf stream as a string returned from the function

Cpdf::openHere() 529specify where the document should open when it first starts

Cpdf::newPage() 529add a new page to the document

Cpdf::line() 529draw a line from one set of coordinates to another

Cpdf::md5_16() 529calculate the 16 byte version of the 128 bit md5 digest of the string

Cpdf::curve() 528draw a bezier curve based on 4 control points

Cpdf::closeObject() 528

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 782: PhpDocumentor 1.2.2 Manual

close an objectCpdf::addLink() 527

add a link in the document to an external URLCpdf::addMessage() 527

used to add messages for use in debuggingCpdf::addJpegFromFile() 527

add a JPEG image into the document, from a fileCpdf::addInternalLink() 527

add a link in the document to an internal destination (ie. within the document)Cpdf::addImage() 527

add an image into the document, from a GD objectCpdf::addInfo() 527

add content to the documents info objectCpdf::addObject() 527

after an object has been created, it wil only show if it has been added, using this function.Cpdf::addPngFromFile() 527

add a PNG image into the document, from a fileCpdf::ARC4_init() 528

initialize the ARC4 encryptionCpdf::checkAllHere() 528

should be used for internal checks, not implemented as yetCpdf::ARC4() 527

ARC4 encrypt a text stringCpdf::addTextWrap() 527

add text to the page, but ensure that it fits within a certain width if it does not fit then put in as much as possible, splitting at word boundaries and return the remainder.

Cpdf::addText() 527add text to the document, at a specified location, size and angle on the page

CHMdefaultConverter::getExampleLink() 425CHMdefaultConverter::getDefineLink() 424Converter::$package_parents 373

Hierarchy of packagesConverter::$page 374

name of current page being convertedConverter::$package_output 373

set to value of -po commandlineConverter::$package_elements 373

alphabetical index of all elements sorted by package, subpackage, page, and class.

Converter::$package 372package name currently being converted

Converter::$packagecategories 372Packages associated with categories

Converter::$page_contents 374alphabetical index of all elements on a page by package/subpackage

Converter::$page_data 374template for the procedural page currently being processed

Converter::$quietmode 375controls display of progress information while parsing.

Converter::$smarty_dir 375Directory that the smarty templates are in

Converter::$pkg_elements 375

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 783: PhpDocumentor 1.2.2 Manual

alphabetical index of all elements, indexed by package/subpackageConverter::$path 375

path of current page being convertedConverter::$page_elements 374

alphabetized index of procedural pages by packageConverter::$parseprivate 375

controls processing of elements marked private with @access privateConverter::$outputformat 372

output format of this converterConverter::$leftindex 371

Controls which of the one-element-only indexes are generated.Converter::$classes 369

All class information, organized by path, and by packageConverter::$class_contents 369

alphabetical index of all methods and vars in a class by package/subpackageConverter::$class 369

set to a classname if currently parsing a class, false if notConverter::$all_packages 369

All packages encountered in parsingConverter.inc 366

Base class for all output converters.Converter 368

Base class for all output converters.Converter::$class_data 370

template for the class currently being processedConverter::$class_elements 370

alphabetized index of classes by packageConverter::$function_elements 371

alphabetized index of functions by packageConverter::$global_elements 371

alphabetized index of global variables by packageConverter::$elements 371

alphabetical index of all elementsConverter::$define_elements 370

alphabetized index of defines by packageConverter::$curfile 370

full path of the current file being convertedConverter::$curpage 370

current procedural page being processedConverter::$sort_absolutely_everything 376

This is used if the content must be passed in the order it should be read, i.e. by package,procedural then classes

Converter::$sort_page_contents_by_type 376This determines whether the $page_contents array should be sorted by element type as wellas alphabetically by name

Converter::convertInclude() 382Converts includes for template output

Converter::convertMethod() 383Converts method for template output

Converter::convertGlobal() 382Converts global variables for template output

Converter::convertFunction() 381Converts function for template output

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 784: PhpDocumentor 1.2.2 Manual

Converter::convertDefine() 380Converts defines for template output

Converter::ConvertErrorLog() 381Convert the phpDocumentor parsing/conversion error log

Converter::convertPage() 383Default Page Handler

Converter::ConvertTitle() 383Convert the title of a Tutorial docbook tag section

Converter::copyFile() 385Copies a file from the template directory to the target directory

Converter::createParentDir() 385Recursively creates all subdirectories that don't exist in the $dir path

Converter::Convert_RIC() 384Convert README/INSTALL/CHANGELOG file contents to output format

Converter::convertVar() 384Converts class variables for template output.

Converter::ConvertTodoList() 384Convert the list of all @todo tags

Converter::convertTutorial() 384Default Tutorial Handler

Converter::convertClass() 380Default Class Handler

Converter::Convert() 380Convert all elements to output format

Converter::$templateName 377Name of the template, from last part of -o

Converter::$template_options 377Options for each template, parsed from the options.ini file in the template base directory

Converter::$templateDir 377Directory that the template is in, relative to phpDocumentor root directory

Converter::$targetDir 376directory that output is sent to. -t command-line sets this.

Converter::$sourcePaths 376A list of files that have had source code generated

Converter::$subpackage 376subpackage name currently being converted

Converter::$title 377Converter::$todoList 378

List of all @todo tags and a link to the element with the @todoConverter::Br() 379

Used to convert <<br>> in a docblockConverter::checkState() 379

Compare parserStringWithInlineTags::Convert() cache state to $stateConverter::Bolden() 379

Used to convert the contents of <<b>> in a docblockConverter::AttrToString() 378

Convert the attribute of a Tutorial docbook tag's attribute listconstructor Converter::Converter() 378

Initialize Converter data structuresconstructor ObjectWordParser::ObjectWordParser() 358constructor parserXMLDocBookTag::parserXMLDocBookTag() 353Classes::nextFile() 156

Prepare to parse a new file

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 785: PhpDocumentor 1.2.2 Manual

Classes::processChild() 156This function recursively climbs up the class tree, setting inherited information like package and adds the elements to phpDocumentor_IntermediateParser.

Classes::Inherit() 155Main processing engine for setting up class inheritance.

Classes::getRoots() 155Get a list of all root classes indexed by package. Used to generate

Classes::getDefiniteChildren() 155Get all classes confirmed in parsing to be descended class $parclass in file $file

Classes::getParentClass() 155Find the parent class of a class in file $file

Classes::setClassParent() 157Find the parent class of $class, and set up structures to note this fact

constructor Io::Io() 159creates an array $this->phpDocOptions and sets program options in it.

constructor parserExampleTag::parserExampleTag() 204Reads and parses the example file indicated

constructor parserFileSourceTag::parserFileSourceTag() 206Set $source to $value, and set up path

constructor parserAccessTag::parserAccessTag() 203checks $value to make sure it is private, protected or public, otherwise

constructor parserList::parserList() 199constructor phpDocumentor_IntermediateParser::phpDocumentor_IntermediateParser() 171

sets up basic data structuresconstructor phpDocumentor_setup::phpDocumentor_setup() 184

Checks PHP version, makes sure it is 4.2.0+, and chooses theClasses::getConflicts() 154

If a package contains two classes with the same name, this function finds that conflict

Classes::getClassesInPath() 154Used by parserData::getClasses() to retrieve classes defined in file $path

create_examples.php 149This file creates example documentation output of all templates.

create_package.xml.php 151common.inc.php 130

Common variables/functions used by other files in phpDocumentorClasses.inc 129

Intermediate class parsing structure.Converter Manual 107config.php 125

Advanced Web Interface to phpDocumentorClasses 152

Intermediate class parsing structure.Classes::addClass() 152

While parsing, add a class to the list of parsed classesClasses::getClass() 154

Get the parserClass representation of a class from its name and fileClasses::getClassByPackage() 154

Search for a class in a packageClasses::addVar() 153

While parsing, add a variable to the list of parsed variablesClasses::addPackageToFile() 153

Mark a package as being used in a class

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 786: PhpDocumentor 1.2.2 Manual

Classes::addMethod() 153While parsing, add a method to the list of parsed methods

constructor parserLicenseTag::parserLicenseTag() 208URL to link to

constructor parserLinkTag::parserLinkTag() 209URL to link to

constructor parserPackagePage::parserPackagePage() 305constructor parserTutorial::parserTutorial() 308constructor parserMethod::parserMethod() 303constructor parserDocBlock::parserDocBlock() 273

sets package to defaultclassLink::$type 251constructor parserPage::parserPage() 263

sets package to default packageconstructor parserVar::parserVar() 312constructor Parser::Parser() 326

Set up invariant parsing variablesconstructor XMLPackagePageParser::XMLPackagePageParser() 346

Set up the wordparserconstructor parserEntity::parserEntity() 351constructor ppageParser::ppageParser() 344

set up invariant Parser variablesconstructor phpDocumentor_HighlightParser::phpDocumentor_HighlightParser() 340

Initialize the $tokenpushEvent, $wordpushEvent arraysconstructor parserDescParser::parserDescParser() 332

sets $wp to be a ObjectWordParserconstructor phpDocumentorTParser::phpDocumentorTParser() 336classLink 250

class linkconstructor parserTutorialInlineTag::parserTutorialInlineTag() 248constructor parserUsedByTag::parserUsedByTag() 218constructor parserUsesTag::parserUsesTag() 219constructor parserTag::parserTag() 215

Set up the tagconstructor parserSeeTag::parserSeeTag() 213constructor parserNameTag::parserNameTag() 210constructor parserReturnTag::parserReturnTag() 212constructor RecordWarning::RecordWarning() 237constructor parserIdInlineTag::parserIdInlineTag() 239constructor parserSourceInlineTag::parserSourceInlineTag() 244constructor parserTocInlineTag::parserTocInlineTag() 247constructor parserLinkInlineTag::parserLinkInlineTag() 243constructor parserInlineTag::parserInlineTag() 241constructor parserInheritdocInlineTag::parserInheritdocInlineTag() 240

Does nothing, overrides parent constructorConverter::EncloseList() 385

Used to convert the contents of <<ol>> or <<ul>> in a docblockConverter::EncloseParagraph() 386

Used to enclose a paragraph in a docblockCHMdefaultConverter::$outputformat 415CHMdefaultConverter::$package_pages 415

array of converted package page names.CHMdefaultConverter::$name 415

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 787: PhpDocumentor 1.2.2 Manual

CHMdefaultConverter::$leftindex 415indexes of elements by package that need to be generated

CHMdefaultConverter::$juststarted 414controls formatting of parser informative output

CHMdefaultConverter::$KLinks 414Table of Contents entry for index.hhk

CHMdefaultConverter::$page_dir 415output directory for the current procedural page being processed

CHMdefaultConverter::$ric_set 415CHMdefaultConverter::addKLink() 416

Add an item to the index.hhk fileCHMdefaultConverter::addSourceTOC() 417CHMdefaultConverter::addHHP() 416constructor CHMdefaultConverter::CHMdefaultConverter() 416

sets $base_dir to $targetDirCHMdefaultConverter::$sort_page_contents_by_type 415

CHMdefaultConverter wants elements sorted by type as well as alphabeticallyCHMdefaultConverter::$wrote 416CHMdefaultConverter::$currentclass 414

contains all of the template class element loop data needed for the current templateCHMdefaultConverter::$current 414

contains all of the template procedural page element loop data needed for the current templateConverter::walk_everything() 410

walk over elements by package rather than pageConverter::writeExample() 410

Write out the formatted source code for an example php fileConverter::walk() 410

called by phpDocumentor_IntermediateParser::Convert() to traverse the array of pages and their elements, converting them to the output format

Converter::Varize() 409Used to convert the contents of <<var>> in a docblock

Converter::unmangle() 409Called by parserSourceInlineTag::stringConvert() to allow converters to format the source code the way they'd like.

Converter::vardump_tree() 409Debugging function for dumping $tutorial_tree

Converter::writeFile() 411Writes a file to target dir

Converter::writeSource() 411Write out the formatted source code for a php file

CHMdefaultConverter::$base_dir 414target directory passed on the command-line.

CHMdefaultConverter::$class_dir 414output directory for the current class being processed

CHMdefaultConverter 413Generates files that MS HTML Help Worshop can use to create a MS Windows compiled help file (CHM)

CHMdefaultConverter.inc 413CHM (Compiled Help Manual) output converter for Smarty Template.

Converter::_tutorial_path() 412Returns the path to this tutorial as a string

CHMdefaultConverter::addTOC() 417CHMdefaultConverter::convertClass() 417

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 788: PhpDocumentor 1.2.2 Manual

Converts class for template outputCHMdefaultConverter::generateElementIndex() 422

Generate alphabetical index of all elementsCHMdefaultConverter::generateFormattedClassTree() 422

returns an array containing the class inheritance tree from the root object to the classCHMdefaultConverter::formatTutorialTOC() 422

Use the template tutorial_toc.tpl to generate a table of contents for HTMLCHMdefaultConverter::formatPkgIndex() 422

CHMdefaultConverter chooses to format both package indexes and the complete index hereCHMdefaultConverter::formatIndex() 421

CHMdefaultConverter uses this function to format template index.html and packages.htmlCHMdefaultConverter::formatLeftIndex() 421

Generate indexes for li_package.html and classtree output filesCHMdefaultConverter::generateFormattedClassTrees() 423

returns a template-enabled array of class treesCHMdefaultConverter::generateKLinks() 423

Get the table of contents for index.hhkCHMdefaultConverter::getClassLink() 424CHMdefaultConverter::getCurrentPageLink() 424CHMdefaultConverter::getCData() 424CHMdefaultConverter::generateTOC() 424CHMdefaultConverter::generatePkgElementIndex() 423

Generate alphabetical index of all elements by package and subpackageCHMdefaultConverter::generatePkgElementIndexes() 424CHMdefaultConverter::endPage() 421

Writes out the template file of $page_data and unsets the template to save memoryCHMdefaultConverter::endClass() 420

Writes out the template file of $class_data and unsets the template to save memoryCHMdefaultConverter::convertInclude() 418

Converts include elements for template outputCHMdefaultConverter::convertMethod() 419

Converts class methods for template outputCHMdefaultConverter::convertGlobal() 418

Converts global variables for template outputCHMdefaultConverter::convertFunction() 418

Converts function for template outputCHMdefaultConverter::convertDefine() 417

Converts defines for template outputCHMdefaultConverter::ConvertErrorLog() 417

Create errors.html template file outputCHMdefaultConverter::convertPackagepage() 419

Converts package page and sets its package as used in $package_pagesCHMdefaultConverter::convertPage() 419

converts procedural pages for template outputCHMdefaultConverter::Convert_RIC() 420

Convert README/INSTALL/CHANGELOG file contents to output formatCHMdefaultConverter::copyMediaRecursively() 420CHMdefaultConverter::convertVar() 420

Converts class variables for template outputCHMdefaultConverter::convertTutorial() 420CHMdefaultConverter::ConvertTodoList() 420Converter::type_adjust() 408

Called by parserReturnTag::Convert() to allow converters to

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 789: PhpDocumentor 1.2.2 Manual

change type names to desired formattingConverter::TranslateTag() 408

Used to translate an XML DocBook tag from a tutorial by reading the options.ini file for the template.

Converter::getFormattedInheritedMethods() 392Return template-enabled list of inherited methods

Converter::getFormattedInheritedVars() 392Return template-enabled list of inherited variables

Converter::getFormattedDescVars() 391Get a list of vars in child classes that override this var

Converter::getFormattedDescMethods() 391Get a list of methods in child classes that override this method

Converter::getFileSourcePath() 390Return the fixed path to the source-code file folder.

Converter::getFormattedConflicts() 391Converter::getFormattedOverrides() 392

Get the method this method overrides, if anyConverter::getFunctionLink() 393

return false or a functionLink to $exprConverter::getLink() 395

The meat of the @see tag and inline {@link} tagConverter::getMethodLink() 396

return false or a methodLink to $expr in $classConverter::getIncludeValue() 394

Parse an include's file to see if it is a file documented in this projectConverter::getId() 394

take abstractLink descendant and text $eltext and return aConverter::getGlobalLink() 393

return false or a globalLink to $exprConverter::getGlobalValue() 394

Parse a global variable's default value for class initialization.Converter::getFileSourceName() 390

Translate the path info into a unique file name for the highlighted source code.

Converter::getDefineLink() 390return false or a defineLink to $expr

Converter::formatPkgIndex() 387Called by walk() while converting.

Converter::formatTutorialTOC() 387Creates a table of contents for a {@toc} inline tag in a tutorial

Converter::formatLeftIndex() 387Called by walk() while converting.

Converter::formatIndex() 386Called by walk() while converting.

Converter::endClass() 386Called by walk() while converting, when the last class element has been parsed.

Converter::endPage() 386Called by walk() while converting, when the last procedural page element has been parsed.

Converter::generateChildClassList() 388returns a list of child classes

Converter::generateFormattedClassTree() 388

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 790: PhpDocumentor 1.2.2 Manual

returns an array containing the class inheritance tree from the root object to the class.

Converter::getCurrentPageLink() 389Converter::getCurrentPageURL() 390

Return the path to the currentConverter::getConverterDir() 389

Get the absolute path to the converter's base directoryConverter::getClassLink() 389

return false or a classLink to $exprConverter::getClassesOnPage() 389

gets a list of all classes declared on a procedural page represented byConverter::getPageLink() 396

return false or a pageLink to $exprConverter::getSortedClassTreeFromClass() 397

Return a tree of all classes that extend this classConverter::returnLink() 405

take URL $link and text $text and return a link in the format needed for the ConverterConverter::returnSee() 405

take abstractLink descendant and text $eltext and return a linkConverter::ProgramExample() 404

Used to convert the <<code>> tag in a docblockConverter::PreserveWhiteSpace() 404

Used to convert the contents of <<pre>> in a docblockConverter::postProcess() 403

This version does nothingConverter::prepareDocBlock() 404

convert the element's DocBlock for outputConverter::Sampize() 406

Used to convert the contents of <<samp>> in a docblockConverter::setSourcePaths() 406

Mark a file as having had source code highlightedConverter::sourceLine() 407

Return a line of highlighted source code with formatted line numberConverter::TranslateEntity() 408

Used to translate an XML DocBook entity like &rdquo; from a tutorial by reading the options.ini file for the template.

Converter::sortPageContentsByElementType() 407sorts $page_contents by element type as well as alphabetically

Converter::setTemplateDir() 407sets the template directory based on the $outputformat and $name

Converter::setTargetDir() 406Sets the output directory for generated documentation

Converter::setTemplateBase() 406Set the template directory with a different template base directory

Converter::Output() 403do all necessary output

Converter::newSmarty() 403Return a Smarty template object to operate with

Converter::getTutorialTree() 400Get a tree structure representing the hierarchy of tutorials

Converter::getVarLink() 400return false or a varLink to $expr in $class

Converter::getTutorialLink() 399

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 791: PhpDocumentor 1.2.2 Manual

The meat of the @tutorial tag and inline {@tutorial} tagConverter::getTutorialId() 399

Return a converter-specific id to distinguish tutorials and their sections

Converter::getSourceLink() 398Converter::getState() 398

Return parserStringWithInlineTags::Convert() cache stateConverter::hasSourceCode() 401

Determine whether an element's file has generated source code, used for linking to line numbers of source.

Converter::hasTutorial() 401Converter::Kbdize() 402

Used to convert the contents of <<kbd>> in a docblockConverter::ListItem() 403

Used to convert the contents of <<li>> in a docblockConverter::Italicize() 402

Used to convert the contents of <<i>> in a docblockConverter::highlightSource() 402

Used to allow converters to format the source code the way they'd like.Converter::highlightDocBlockSource() 401

Used to allow converters to format the source code of DocBlocks the way they'd like.

Converter Default Template Variables 96

DDirNode 536

Directory NodeDirNode::$path 536

full path to this nodeDIR_SEP 549

set SMARTY_DIR to absolute path to Smarty library files.defineLink::$type 251defineLink 251

define linkdebug() 130

Debugging outputDescHTML.inc 194

All abstract representations of html tags in DocBlocks are handled by the classes in this file

DocBlockTags.inc 202All abstract representations of DocBlock tags are defined

Documentable PHP Elements 21

EErrorTracker::addErrorReturn() 234

add a new error to the $errors array and returns the error stringErrorTracker::addError() 233

add a new error to the $errors arrayErrorTracker::$warnings 233

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 792: PhpDocumentor 1.2.2 Manual

array of RecordWarningsErrorTracker::$linenum 233ErrorTracker::addWarning() 234

add a new warning to the $warnings arrayErrorTracker::handleEvent() 234

This function subscribes to two events in the Parser in order to keep track of line numberinformation and file name.

ErrorTracker::returnWarnings() 235Get sorted array of all warnings in parsing/conversion

ErrorTracker::returnLastWarning() 235Get the warning message of the last warning

ErrorTracker::returnLastError() 235Get the error message of the last error

ErrorTracker::returnErrors() 234Get sorted array of all non-fatal errors in parsing/conversion

ErrorTracker::$lastwarning 233index in $warnings of last warning triggered

ErrorTracker::$lasterror 233index in $errors of last error triggered

EventStack::getEvent() 158Get the current event

EventStack::$stack 158The stack

EventStack::$num 158The number of events in the stack

EventStack 157An event Stack

EventStack::popEvent() 158Pop an event from the stack

EventStack::pushEvent() 158Push an event onto the stack

ErrorTracker::$errors 233array of RecordErrors

ErrorTracker::$curfile 233ErrorTracker 233

contains all the errors/warningsErrors.inc 222EventStack.inc 132

An event Stack

Ffunction.html_table.php 602

Smarty pluginfunction.mailto.php 604

Smarty pluginfunction.html_select_time.php 601

Smarty pluginfunction.html_select_date.php 599

Smarty pluginfunction.html_options.php 596

Smarty plugin

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 793: PhpDocumentor 1.2.2 Manual

function.html_radios.php 597Smarty plugin

function.math.php 606Smarty plugin

function.popup.php 607Smarty plugin

find_phpdoc.php 710Source code

file_dialog.php 711Source code

FAQ 677function.var_dump.php 609function.popup_init.php 608

Smarty pluginfunction.html_image.php 594

Smarty pluginfunction.html_checkboxes.php 592

Smarty pluginfile_dialog.php 534

Advanced Web Interface to phpDocumentorfunction.assign.php 583

Smarty pluginfind_phpdoc.php 349

Utility file: used to find location of phpDocumentorfunctionLink::$type 252functionLink 251

function linkfunction.assign_debug_info.php 584

Smarty pluginfunction.config_load.php 585

Smarty pluginfunction.eval.php 590

Smarty pluginfunction.fetch.php 591

Smarty pluginfunction.debug.php 589

Smarty pluginfunction.cycle.php 587

Smarty pluginfunction.counter.php 586

Smarty pluginfancy_debug() 130

Returns a formatted var_dump for debugging purposes.

Gglobal $phpDocumentor_errors 222global $title 150

Title of the generated documentationglobal $parse_directory 149

location of the files to parse. Change to a location on your computerglobal $phpDocumentor_error_descrip 223

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 794: PhpDocumentor 1.2.2 Manual

Error messages for phpDocumentor parser errorsglobal $phpDocumentor_warning_descrip 225

Error messages for phpDocumentor parser warningsgetDir() 535globalLink::$type 252globalLink 252

global variable linkglobal $output_directory 149

Directory the output should go to.global $output 149

directories to output examples into.global $phpDocumentor_DefaultPackageName 144

default package name, set using -dn --defaultpackagenameglobal $phpDocumentor_DefaultCategoryName 144

default package name, set using -dn --defaultcategorynameglobal $interface 144

$interface is either 'web' or is not set at allglobal $_phpDocumentor_setting 145

$_phpDocumentor_setting is either the value from the web interface, or is set up byIo::parseArgv()

global $cvsadd_directory 147Physical location on this computer of the package to parse

global $base_package 149default package name, used to change all non-included files to this package

global $ignore 147Comma-separated list of files and directories to ignore

global $files 147getDir() 126

HHTMLSmartyConverter::getFunctionLink() 462HTMLSmartyConverter::getGlobalLink() 462HTMLSmartyConverter::getId() 463HTMLSmartyConverter::getMethodLink() 463HTMLSmartyConverter::getExampleLink() 462HTMLSmartyConverter::getDefineLink() 462HTMLSmartyConverter::getClassContents() 461HTMLSmartyConverter::getClassLeft() 461HTMLSmartyConverter::getClassLink() 461HTMLSmartyConverter::getCurrentPageLink() 462HTMLSmartyConverter::getPageContents() 463HTMLSmartyConverter::getPageLeft() 463HTMLSmartyConverter::getTutorialList() 465HTMLSmartyConverter::getTutorialTree() 465HTMLSmartyConverter::getVarLink() 465HTMLSmartyConverter::makeLeft() 465HTMLSmartyConverter::getTutorialId() 465HTMLSmartyConverter::getSourceLink() 465HTMLSmartyConverter::getPageLink() 463HTMLSmartyConverter::getPageName() 464HTMLSmartyConverter::getRootTree() 464

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 795: PhpDocumentor 1.2.2 Manual

return formatted class tree for the Class Trees pageHTMLSmartyConverter::getSourceAnchor() 464

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a @filesource tag.

HTMLSmartyConverter::getCData() 461HTMLSmartyConverter::generatePkgElementIndexes() 461HTMLSmartyConverter::ConvertTodoList() 457HTMLSmartyConverter::convertTutorial() 457HTMLSmartyConverter::convertVar() 457

Converts class variables for template outputHTMLSmartyConverter::Convert_RIC() 458

Convert README/INSTALL/CHANGELOG file contents to output formatHTMLSmartyConverter::convertPage() 457

converts procedural pages for template outputHTMLSmartyConverter::convertPackagepage() 457

Converts package page and sets its package as used in $package_pagesHTMLSmartyConverter::convertFunction() 455

Converts function for template outputHTMLSmartyConverter::convertGlobal() 455

Converts global variables for template outputHTMLSmartyConverter::convertInclude() 456

Converts include elements for template outputHTMLSmartyConverter::convertMethod() 456

Converts class methods for template outputHTMLSmartyConverter::copyMediaRecursively() 458HTMLSmartyConverter::endClass() 458

Writes out the template file of $class_data and unsets the template to save memoryHTMLSmartyConverter::generateElementIndex() 460

Generate alphabetical index of all elementsHTMLSmartyConverter::generateFormattedClassTree() 460

returns an array containing the class inheritance tree from the root object to the classHTMLSmartyConverter::generateFormattedClassTrees() 460

returns a template-enabled array of class treesHTMLSmartyConverter::generatePkgElementIndex() 461

Generate alphabetical index of all elements by package and subpackageHTMLSmartyConverter::formatTutorialTOC() 459

Use the template tutorial_toc.tpl to generate a table of contents for HTMLHTMLSmartyConverter::formatPkgIndex() 459

HTMLdefaultConverter chooses to format both package indexes and the complete index hereHTMLSmartyConverter::endPage() 458

Writes out the template file of $page_data and unsets the template to save memoryHTMLSmartyConverter::formatIndex() 458

HTMLdefaultConverter uses this function to format template index.html and packages.htmlHTMLSmartyConverter::formatLeftIndex() 459

Generate indexes for li_package.html and classtree output filesHTMLSmartyConverter::Output() 465

This function is not used by HTMLdefaultConverter, but is required by ConverterHTMLSmartyConverter::postProcess() 465

Uses htmlspecialchars() on the inputHTML_TreeMenu_Presentation 541

HTML_TreeMenu_Presentation classHTML_TreeMenu_Presentation::$menu 542

The TreeMenu structure

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 796: PhpDocumentor 1.2.2 Manual

HTML_TreeMenu_Presentation::printMenu() 542Prints the HTML generated by the toHTML() method.

HTML_TreeNode 542HTML_TreeNode class

HTML_TreeMenu_Listbox::toHTML() 541Returns the HTML generated

HTML_TreeMenu_Listbox::$promoText 541The text that is displayed in the first option

HTML_TreeMenu_Listbox 540HTML_TreeMenu_Listbox class

HTML_TreeMenu_Listbox::$indentChar 540The character used for indentation

HTML_TreeMenu_Listbox::$indentNum 540How many of the indent chars to use

HTML_TreeMenu_Listbox::$linkTarget 540Target for the links generated

HTML_TreeNode::$cssClass 543The css class for this node

HTML_TreeNode::$ensureVisible 543Should this node be made visible?

HTML_TreeNode::$parent 544The parent node. Null if top level

HTML_TreeNode::$text 544The text for this node.

HTML_TreeNode::addItem() 545Adds a new subnode to this node.

HTML_TreeNode::setOption() 545Allows setting of various parameters after the initial

HTML_TreeNode::$link 544The link for this node.

HTML_TreeNode::$items 544Indexed array of subnodes

HTML_TreeNode::$events 543Javascript event handlers;

HTML_TreeNode::$expanded 543Whether this node is expanded or not

HTML_TreeNode::$icon 543The icon for this node.

HTML_TreeNode::$isDynamic 543Whether this node is dynamic or not

HTML_TreeMenu_DHTML::toHTML() 539Returns the HTML for the menu. This method can be used instead of printMenu() to use the menu system with a template system.

HTML_TreeMenu_DHTML::$userPersistence 539Whether to use clientside persistence or not

HTMLSmartyConverter::SmartyInit() 467HTMLSmartyConverter::unmangle() 467HTMLSmartyConverter::writeExample() 467HTMLSmartyConverter::writeNewPPage() 467HTMLSmartyConverter::setTargetDir() 467

calls the converter setTargetDir, and then copies any template images and the stylesheet ifthey haven't been copied

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 797: PhpDocumentor 1.2.2 Manual

HTMLSmartyConverter::returnSee() 466This function takes an abstractLink descendant and returns an html link

HTMLSmartyConverter::ProgramExample() 465Used to convert the <<code>> tag in a docblock

HTMLSmartyConverter::rcNatCmp() 466does a nat case sort on the specified second level value of the array

HTMLSmartyConverter::rcNatCmp1() 466does a nat case sort on the specified second level value of the array.

HTMLSmartyConverter::returnLink() 466HTMLSmartyConverter::writeRIC() 467HTMLSmartyConverter::writeSource() 467HTML_TreeMenu_DHTML::$images 538

Path to the imagesHTML_TreeMenu_DHTML::$isDynamic 538

Dynamic status of the treemenu. If true (default) this has no effect. If false it will override all dynamic status vars and set the menu to be fully expanded an non-dynamic.

HTML_TreeMenu_DHTML::$linkTarget 539Target for the links generated

HTML_TreeMenu_DHTML::$noTopLevelImages 539Whether to skip first level branch images

HTML_TreeMenu_DHTML::$defaultClass 538The default CSS class for the nodes

HTML_TreeMenu_DHTML 538HTML_TreeMenu_DHTML class

HTML_TreeMenu 536HTML_TreeMenu Class

HTML_TreeMenu::$items 537Indexed array of subnodes

HTML_TreeMenu::addItem() 537This function adds an item to the the tree.

HTMLSmartyConverter::ConvertErrorLog() 455Create errors.html template file output

HTMLSmartyConverter::convertDefine() 454Converts defines for template output

HTMLframesConverter::copyMediaRecursively() 440HTMLframesConverter::endClass() 440

Writes out the template file of $class_data and unsets the template to save memoryHTMLframesConverter::endPage() 441

Writes out the template file of $page_data and unsets the template to save memoryHTMLframesConverter::formatIndex() 441

HTMLdefaultConverter uses this function to format template index.html and packages.htmlHTMLframesConverter::Convert_RIC() 440

Convert README/INSTALL/CHANGELOG file contents to output formatHTMLframesConverter::convertVar() 440

Converts class variables for template outputHTMLframesConverter::convertPackagepage() 439

Converts package page and sets its package as used in $package_pagesHTMLframesConverter::convertPage() 439

converts procedural pages for template outputHTMLframesConverter::ConvertTodoList() 440HTMLframesConverter::convertTutorial() 440HTMLframesConverter::formatLeftIndex() 441

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 798: PhpDocumentor 1.2.2 Manual

Generate indexes for li_package.html and classtree output filesHTMLframesConverter::formatPkgIndex() 442

HTMLdefaultConverter chooses to format both package indexes and the complete index hereHTMLframesConverter::getCData() 444HTMLframesConverter::getClassLink() 444HTMLframesConverter::getCurrentPageLink() 444HTMLframesConverter::getDefineLink() 444HTMLframesConverter::generatePkgElementIndexes() 443HTMLframesConverter::generatePkgElementIndex() 443

Generate alphabetical index of all elements by package and subpackageHTMLframesConverter::formatTutorialTOC() 442

Use the template tutorial_toc.tpl to generate a table of contents for HTMLHTMLframesConverter::generateElementIndex() 442

Generate alphabetical index of all elementsHTMLframesConverter::generateFormattedClassTree() 442

returns an array containing the class inheritance tree from the root object to the classHTMLframesConverter::generateFormattedClassTrees() 443

returns a template-enabled array of class treesHTMLframesConverter::convertMethod() 439

Converts class methods for template outputHTMLframesConverter::convertInclude() 438

Converts include elements for template outputHTMLframesConverter::$currentclass 435

contains all of the template class element loop data needed for the current templateHTMLframesConverter::$juststarted 435

controls formatting of parser informative outputHTMLframesConverter::$leftindex 435

indexes of elements by package that need to be generatedHTMLframesConverter::$name 436HTMLframesConverter::$current 435

contains all of the template procedural page element loop data needed for the current templateHTMLframesConverter::$class_dir 435

output directory for the current class being processedHighlightParser.inc 314

Source Code HighlightingHTMLframesConverter.inc 434

HTML original framed output converter, modified to use Smarty Template.HTMLframesConverter 434

HTML output converter.HTMLframesConverter::$base_dir 435

target directory passed on the command-line.HTMLframesConverter::$outputformat 436HTMLframesConverter::$package_pages 436

array of converted package page names.HTMLframesConverter::convertDefine() 437

Converts defines for template outputHTMLframesConverter::ConvertErrorLog() 438

Create errors.html template file outputHTMLframesConverter::convertFunction() 438

Converts function for template outputHTMLframesConverter::convertGlobal() 438

Converts global variables for template outputHTMLframesConverter::convertClass() 437

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 799: PhpDocumentor 1.2.2 Manual

Converts class for template outputHTMLframesConverter::$wrote 437HTMLframesConverter::$page_dir 436

output directory for the current procedural page being processedHTMLframesConverter::$ric_set 436HTMLframesConverter::$sort_page_contents_by_type 436

Smarty Converter wants elements sorted by type as well as alphabeticallyHTMLframesConverter::getExampleLink() 445HTMLframesConverter::getFunctionLink() 445HTMLSmartyConverter::$class 452

name of current class being convertedHTMLSmartyConverter::$class_data 452

template for the class currently being processedHTMLSmartyConverter::$class_dir 452

output directory for the current class being processedHTMLSmartyConverter::$current 452

contains all of the template procedural page element loop data needed for the current templateHTMLSmartyConverter::$base_dir 452

target directory passed on the command-line.HTMLSmartyConverter 451

HTML output converter.HTMLframesConverter::writeExample() 450HTMLframesConverter::writeNewPPage() 450HTMLframesConverter::writeSource() 450HTMLSmartyConverter.inc 451

HTML output converter for Smarty Template.HTMLSmartyConverter::$currentclass 452

contains all of the template class element loop data needed for the current templateHTMLSmartyConverter::$juststarted 452

controls formatting of parser informative outputHTMLSmartyConverter::$page_dir 454

output directory for the current procedural page being processedHTMLSmartyConverter::$path 454

path of current page being convertedHTMLSmartyConverter::$sort_page_contents_by_type 454

Smarty Converter wants elements sorted by type as well as alphabeticallyHTMLSmartyConverter::convertClass() 454

Converts class for template outputHTMLSmartyConverter::$page_data 453

template for the procedural page currently being processedHTMLSmartyConverter::$page 453

name of current page being convertedHTMLSmartyConverter::$leftindex 453

indexes of elements by package that need to be generatedHTMLSmartyConverter::$name 453HTMLSmartyConverter::$outputformat 453HTMLSmartyConverter::$package_pages 453

array of converted package page names.HTMLframesConverter::unmangle() 450HTMLframesConverter::SmartyInit() 450HTMLframesConverter::getRootTree() 447

return formatted class tree for the Class Trees pageHTMLframesConverter::getSourceAnchor() 447

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 800: PhpDocumentor 1.2.2 Manual

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a @filesource tag.

HTMLframesConverter::getSourceLink() 447HTMLframesConverter::getTutorialId() 447HTMLframesConverter::getPageName() 447HTMLframesConverter::getPageLink() 446HTMLframesConverter::getGlobalLink() 445HTMLframesConverter::getId() 445HTMLframesConverter::getIndexInformation() 445

Generate indexing information for given elementHTMLframesConverter::getMethodLink() 446HTMLframesConverter::getTutorialTree() 447HTMLframesConverter::getVarLink() 447HTMLframesConverter::rcNatCmp1() 449

does a nat case sort on the specified second level value of the array.HTMLframesConverter::returnLink() 449HTMLframesConverter::returnSee() 449

This function takes an abstractLink descendant and returns an html linkHTMLframesConverter::setTargetDir() 449

calls the converter setTargetDir, and then copies any template images and the stylesheet ifthey haven't been copied

HTMLframesConverter::rcNatCmp() 448does a nat case sort on the specified second level value of the array

HTMLframesConverter::ProgramExample() 448Used to convert the <<code>> tag in a docblock

HTMLframesConverter::makeLeft() 448HTMLframesConverter::Output() 448

This function is not used by HTMLdefaultConverter, but is required by ConverterHTMLframesConverter::postProcess() 448

Uses htmlspecialchars() on the inputhtmlArraySelect() 126

Returns a select box based on an key,value array where selected is based on key

IIo::getReadmeInstallChangelog() 161Io::getRegExpableSearchString() 161

Converts $s into a string that can be used with preg_matchIo::getDirTree() 161Io::getBase() 160

Retrieve common directory (case-insensitive in windows)Io::displayHelpMsg() 160

create the help message for display on the command-lineIo::getAllFiles() 160

Take a filename with wildcards and return all files that match theIo::getTutorials() 161

Retrieve tutorial subdirectories and their contents from the list ofIo::isIncludeable() 162

calls http://www.php.net/file_exists for each value in include_path,InlineTags.inc 238

All abstract representations of inline tags are in this fileINSTALL 680

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 801: PhpDocumentor 1.2.2 Manual

Io::_setupIgnore() 163Construct the $ignore array

Io::removeNonMatches() 162Removes files from the $dir array that do not match the search string in

Io::parseArgv() 162Parses $_SERVER['argv'] and creates a setup array

Io::readPhpFile() 162Reads a file and returns it as a string Does basic error checking

Io::dirList() 160Io::checkIgnore() 159

Tell whether to ignore a file or a directory allows * and ? wildcards

inline {@toc} 87inline {@tutorial} 89inline {@source} 83inline {@link} 81inline {@internal}} 78inline {@inheritdoc} 79IntermediateParser.inc 133

The phpDocumentor_IntermediateParser ClassIo.inc 134

Class to handle file and user io opperationsIo::$ignore 159

Format: array(array(regexp-ready string to search for whole path,Io::$phpDocOptions 159

Holds all the options that are avaible to the cmd line interfaceIo 159

Class to handle file and user io opperationsIoinc_sortfiles() 134

Sorting functions for the file listIoinc_mystrucsort() 134

Sorting functions for the file listinline {@id} 76

LLinkClasses.inc 249

Linking to element documentation is performed by the classes in this file.

Mmodifier.regex_replace.php 626

Smarty pluginmodifier.replace.php 627

Smarty pluginmodifier.rawurlencode.php 625modifier.nl2br.php 624

Smarty pluginmodifier.indent.php 622

Smarty plugin

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 802: PhpDocumentor 1.2.2 Manual

modifier.lower.php 623Smarty plugin

modifier.spacify.php 628Smarty plugin

modifier.string_format.php 629Smarty plugin

modifier.upper.php 633Smarty plugin

modifier.wordwrap.php 634Smarty plugin

modifier.truncate.php 632Smarty plugin

modifier.strip_tags.php 631Smarty plugin

modifier.strip.php 630Smarty plugin

modifier.htmlentities.php 621modifier.escape.php 620

Smarty pluginmodifier.capitalize.php 610

Smarty pluginmodifier.cat.php 611

Smarty pluginmethodLink::addLink() 253methodLink::$type 252methodLink 252

method linkmethodLink::$class 252modifier.count_characters.php 612

Smarty pluginmodifier.count_paragraphs.php 613

Smarty pluginmodifier.debug_print_var.php 618

Smarty pluginmodifier.default.php 619

Smarty pluginmodifier.date_format.php 616

Smarty pluginmodifier.count_words.php 615

Smarty pluginmodifier.count_sentences.php 614

Smarty pluginmystrucsort() 148

Sorting functions for the file list

Nnew_phpdoc.php 715

Source codenew_phpdoc.php 535

Advanced Web Interface to phpDocumentor

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 803: PhpDocumentor 1.2.2 Manual

Ooutputfilter.trimwhitespace.php 635

Smarty pluginObjectWordParser::setup() 358

Set the word parser to go.ObjectWordParser::nextIsObjectOrNonNL() 358

Determine if the next word is an inline tagObjectWordParser::getWord() 358ObjectWordParser 358

Like WordParser but designed to handle an array with strings and

PparserTutorial::$children 306

links to the child tutorials, or false if noneparserTutorial 305parserTutorial::$ini 306

output from tutorialname.ext.iniparserTutorial::$linked_element 306

The documentable element this tutorial is linked toparserTutorial::$next 306

link to the next tutorial in a document series, or false if noneparserTutorial::$name 306

filename minus extension of this tutorial (used for @tutorial tag)parserPackagePage::Convert() 305parserPackagePage::$type 305

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserMethod::setConstructor() 304

Use this method to tell the parser that this method is the class constructorparserMethod::getOverridingMethodsForClass() 304parserMethod::setDestructor() 304

Use this method to tell the parser that this method is the class constructorparserPackagePage 304parserPackagePage::$package 305parserTutorial::$package 307parserTutorial::$parent 307

link to the parent tutorial in a document series, or false if noneparserTutorial::getParent() 309

Retrieve converter-specific link to the parent tutorial's documentationparserTutorial::getNext() 309

Retrieve converter-specific link to the next tutorial's documentationparserTutorial::getPrev() 309

Retrieve converter-specific link to the previous tutorial's documentationparserTutorial::getTitle() 309

Retrieve the title of the tutorial, or of any subsectionparserTutorial::isChildOf() 310parserTutorial::getLink() 308

Get a link to this tutorial, or to any subsection of this tutorialparserTutorial::Convert() 308parserTutorial::$prev 307

link to the previous tutorial in a document series, or false if none

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 804: PhpDocumentor 1.2.2 Manual

parserTutorial::$path 307path to the tutorial page

parserTutorial::$tutorial_type 307Either cls, pkg, or proc

parserTutorial::$type 308Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'

parserTutorial::$_xml 308parserMethod::getOverridingMethods() 304parserMethod::getOverrides() 303parserGlobal 299parserFunction::setReturnsReference() 299

sets $returnsreference to trueparserGlobal::$datatype 299

Name of the global's data typeparserGlobal::$type 299

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserGlobal::getConflicts() 300

Returns all global variables in other packages that have the same name as this global variableparserFunction::listStatics() 299parserFunction::listParams() 299parserFunction::getReturnsReference() 298parserFunction::getParam() 298parserFunction::getSource() 299parserFunction::hasSource() 299

Determine whether the source code has been requested via {@source}parserFunction::listGlobals() 299parserGlobal::getDataType() 300

Retrieve converter-specific representation of the data typeparserGlobal::getLink() 300

quick way to link to this elementparserMethod::getClass() 303

Return name of the class that contains this methodparserMethod::$type 302

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserMethod::getFunctionCall() 303

adds "constructor " to start of function call if $isConstructor is trueparserMethod::getIntricateFunctionCall() 303parserMethod::getLink() 303

quick way to link to this elementparserMethod::$isDestructor 302parserMethod::$isConstructor 302parserInclude 301parserGlobal::setDataType() 301

Sets the name of the global variable's typeparserInclude::$type 301

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserMethod 302parserMethod::$class 302parserTutorial::setNext() 310parserTutorial::setParent() 310PARSER_EVENT_LOGICBLOCK 317

{ encountered in parsing a function or php codePARSER_EVENT_INLINE_DOCKEYWORD 317

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 805: PhpDocumentor 1.2.2 Manual

used when an inline {@tag} is encountered in parsing a DocBlockPARSER_EVENT_METHOD 317

used by the HighlightParser only, when a method startsPARSER_EVENT_METHOD_LOGICBLOCK 317

used by the HighlightParser only, when a method body is parsedPARSER_EVENT_OUTPHP 317

used when a ? > (with no space) is encountered in parsingPARSER_EVENT_NOEVENTS 317

used for the beginning of parsing, before first < ? php encounteredPARSER_EVENT_INCLUDE_PARAMS_PARENTHESIS 317

used when an inner ( ) is encountered while parsing aninclude/require/include_once/include_once statement

PARSER_EVENT_INCLUDE_PARAMS 317used when an opening parenthesis of an include/require/include_once/include_oncestatement is encountered in parsing

PARSER_EVENT_FUNCTION_PARAMS 316used when a function statement opening parenthesis is encountered in parsing

PARSER_EVENT_FUNCTION 316used when a function definition is encountered in parsing

PARSER_EVENT_FUNC_GLOBAL 316used when parsing a "global $var1, $var2;" declaration in a function

PARSER_EVENT_GLOBAL_VALUE 316used when parsing the default value in a global variable declaration

PARSER_EVENT_INCLUDE 316used when an include/require/include_once/include_once statement is encountered in parsing

PARSER_EVENT_PHPCODE 317used when php code processor instruction (< ? php) is encountered in parsing

PARSER_EVENT_QUOTE 317used when double quotation mark (") encountered in parsing

PHPDOCUMENTOR_EVENT_DOCBLOCK 318DocBlock published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_DEFINE 318Constant (define) published to IntermediateParser with this event

PHPDOCUMENTOR_EVENT_DOCBLOCK_TEMPLATE 318used when a docblock template is encountered in the source

PHPDOCUMENTOR_EVENT_END_DOCBLOCK_TEMPLATE 318used when a docblock template is encountered in the source

PHPDOCUMENTOR_EVENT_END_PAGE 318used to inform phpDocumentor_IntermediateParser that the current file has been completelyparsed.

PHPDOCUMENTOR_EVENT_CLASS 318Class published to IntermediateParser with this event

PARSER_EVENT_VAR 318used when a var statement is encountered in parsing a class definition

PARSER_EVENT_SINGLEQUOTE 317used when a single quote (') is encountered in parsing

PARSER_EVENT_QUOTE_VAR 317used by the HighlightParser only, when {$var} is encountered in a string

PARSER_EVENT_STATIC_VAR 318used when parsing a "static $var1, $var2;" declaration in a function

PARSER_EVENT_STATIC_VAR_VALUE 318used when parsing the value in a "static $var1 = x" declaration in a function

PARSER_EVENT_TAGS 318

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 806: PhpDocumentor 1.2.2 Manual

used when parsing the @tag block of a docblockPARSER_EVENT_ESCAPE 316

used when a backslash is encountered in parsing a string or other escapable entityPARSER_EVENT_EOFQUOTE 316

used when a <<< is encountered in parsingparserVar::getOverridingVarsForClass() 313parserVar::getOverridingVars() 312Parser.inc 315PARSER_EVENT_ARRAY 315

used when an array definition is encountered in parsingPARSER_EVENT_CLASS 315

used when a class definition is encountered in parsingparserVar::getOverrides() 312parserVar::getLink() 312

quick way to link to this elementparserVar 311parserTutorial::setPrev() 311parserVar::$class 311parserVar::$type 311

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserVar::getClass() 312

Retrieve the class namePARSER_EVENT_CLASS_MEMBER 315

used by the HighlightParser only, when ->var or ->function() is encountered in a methodPARSER_EVENT_COMMENT 315

used when short comment // is encountered in parsingPARSER_EVENT_DOCKEYWORD 316

used when a @tag is encountered in DocBlock parsingPARSER_EVENT_DOCBLOCK_TEMPLATE 316

used when encountering a /**#@+ comment marking a new docblock templatePARSER_EVENT_DOCKEYWORD_EMAIL 316

used when a <email@address> is encountered in parsing an @author tagPARSER_EVENT_END_DOCBLOCK_TEMPLATE 316

used when encountering a /**#@-* / comment (no space) marking the end of using a docblocktemplate

PARSER_EVENT_END_STATEMENT 316PARSER_EVENT_DOCBLOCK 316

used when a DocBlock is encountered in parsingPARSER_EVENT_DESC 315

used when parsing the desc part of a docblockPARSER_EVENT_DEFINE 315

used when a define statement is encountered in parsingPARSER_EVENT_COMMENTBLOCK 315

used when long comment /x x/ where x is an asterisk is encountered in parsingPARSER_EVENT_DEFINE_GLOBAL 315

used when parsing a global variable declarationPARSER_EVENT_DEFINE_PARAMS 315

used when a define statement opening parenthesis is encountered in parsingPARSER_EVENT_DEFINE_PARAMS_PARENTHESIS 315

used when a define statement's opening parenthesis is encountered in parsingparserFunction::getLink() 298

quick way to link to this elementparserFunction::getIntricateFunctionCall() 298

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 807: PhpDocumentor 1.2.2 Manual

Like getFunctionCall(), but has no English or pre-determined formatting.parserDocBlock::setLineNumber() 281

Sets the starting line number for the DocBlockparserDocBlock::setExplicitPackage() 280

Used if this docblock has a @package tag.parserDocBlock::setShortDesc() 281

Set the short description of the DocBlockparserDocBlock::setSource() 281

Passes to parserStringWithInlineTags::setSource()parserDocBlock::updateParams() 282

replaces nameless parameters in the $params array with their namesparserDocBlock::updateGlobals() 282

replaces nameless global variables in the $funcglobals array with their namesparserDocBlock::setExplicitCategory() 280

Used if this docblock has a @category tag.parserDocBlock::setEndLineNumber() 280

Sets the ending line number for the DocBlockparserDocBlock::overridePackage() 279

set the element's package to the passed values. Used inphpDocumentor_IntermediateParser to align package of

parserDocBlock::listTags() 279parserDocBlock::postProcess() 279

Parse out any html tags from doc comments, and make them intoparserDocBlock::replaceInheritDoc() 280

Wrapper for parserDesc::replaceInheritDoc()parserDocBlock::setDesc() 280parserDocBlock::updateStatics() 282

replaces nameless static variables in the $statics array with their namesParserElements.inc 283

Parser Elements, all classes representing documentable elementsparserClass::addTutorial() 285parserClass::$type 285

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserClass::getChildClassList() 285

returns a list of all child classes of this classparserClass::getConflicts() 285

Returns all classes in other packages that have the same name as this classparserClass::getExtends() 286parserClass::$tutorial 284parserClass::$sourceLocation 284parserClass::$curfile 283parserClass 283parserClass::$extends 284parserClass::$ignore 284

Used to determine whether a class should be ignored or not. Helps maintain integrity ofparsing

parserClass::$parent 284Format: array(file, parent) where parent class is found or false if no parent

parserDocBlock::listParams() 279parserDocBlock::hasInheritDoc() 279

Wrapper for parserDesc::hasInheritDoc()parserDocBlock::addSee() 276

creates a parserLinkTag and adds it to the $tags array

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 808: PhpDocumentor 1.2.2 Manual

parserDocBlock::addReturn() 275creates a parserReturnTag and adds it to the $tags array

parserDocBlock::addStaticVar() 276parserDocBlock::addTag() 276

Used to insert DocBlock Template tags into a docblockparserDocBlock::addUnknownTag() 276

adds an unknown tag to the $unknown_tags array for use by custom convertersparserDocBlock::addParam() 275parserDocBlock::addPackage() 275parserDocBlock::addFuncGlobal() 274

adds a function declaration of @global to the $funcglobals arrayparserDocBlock::addFileSource() 274

Adds a new @filesource tag to the DocBlockparserDocBlock::addKeyword() 274parserDocBlock::addLink() 274

creates a parserLinkTag and adds it to the $tags arrayparserDocBlock::addName() 275

Adds a @name tag to the tag listparserDocBlock::addUses() 277

Add a @uses tag to the DocBlockparserDocBlock::addVar() 277

creates a parserVarTag and adds it to the $tags arrayparserDocBlock::getKeyword() 278parserDocBlock::getExplicitPackage() 278

If the DocBlock has a @package tag, then this returns trueparserDocBlock::getLineNumber() 278

Retrieve starting line numberparserDocBlock::getSDesc() 279parserDocBlock::getType() 279parserDocBlock::getExplicitCategory() 278

If the DocBlock has a @category tag, then this returns trueparserDocBlock::getEndLineNumber() 278

Retrieve ending line numberparserDocBlock::changeGlobal() 277parserDocBlock::canSource() 277

Tells the DocBlock it can have a @filesource tagparserDocBlock::changeParam() 278parserDocBlock::changeStatic() 278parserDocBlock::getDesc() 278parserClass::getInheritedMethods() 286parserClass::getInheritedVars() 286parserElement::setEndLineNumber() 294

Sets the ending line number of elementsparserElement::setDocBlock() 294parserElement::setFile() 294parserElement::setLineNumber() 294

Set starting line numberparserElement::setName() 294parserElement::getPath() 294parserElement::getPackage() 294parserElement::getEndLineNumber() 293parserElement::$path 293

full path location of this element (filename)

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 809: PhpDocumentor 1.2.2 Manual

parserElement::getFile() 293parserElement::getLineNumber() 293parserElement::getName() 294parserElement::setPath() 294parserFunction 295parserFunction::addSource() 297

Set the source code. Always array in PHP 4.3.0+parserFunction::addParam() 297parserFunction::addStatics() 297

Add all "static $var, $var2 = 6" declarations to this functionparserFunction::getConflicts() 297

Returns all functions in other packages that have the same name as this functionparserFunction::getFunctionCall() 298

Get a human-friendly description of the function callparserFunction::addGlobals() 296

Add all "global $var, $var2" declarations to this functionparserFunction::$type 296

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserFunction::$params 295

parameters parsed from function definition.parserFunction::$globals 295

global declarations parsed from function definitionparserFunction::$returnsreference 296

Function returns a reference to an element, instead of a valueparserFunction::$source 296parserFunction::$statics 296

static variable declarations parsed from function definitionparserElement::$name 293

name of this element, or include type if element is a parserIncludeparserElement::$linenumber 293

Line number in the source on which this element appearsparserClass::getVar() 288parserClass::getTutorial() 288

Get the associated tutorial for this class, if anyparserClass::getVarNames() 289parserClass::getVars() 289parserClass::hasMethod() 289parserClass::getSourceLocation() 288parserClass::getParentClassTree() 287parserClass::getMethod() 287parserClass::getLink() 286

quick way to link to this elementparserClass::getMethodNames() 287parserClass::getMethods() 287parserClass::getParent() 287

retrieve object that represents the parent classparserClass::hasVar() 289parserClass::setExtends() 289parserElement::$conflicts 292parserElement 292

all elements except parserPackagePage descend from this abstract classparserElement::$docblock 292parserElement::$endlinenumber 293

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 810: PhpDocumentor 1.2.2 Manual

line number on file where this element stopsparserElement::$file 293

location of this element (filename)parserDefine::getLink() 291

quick way to link to this elementparserDefine::getConflicts() 291

Returns all defines in other packages that have the same name as this defineparserClass::setParentNoClass() 290parserClass::setParent() 289parserClass::setSourceLocation() 290parserDefine 290parserDefine::$type 291

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'PHPDOCUMENTOR_EVENT_FUNCTION 318

Function published to IntermediateParser with this eventPHPDOCUMENTOR_EVENT_GLOBAL 319

used when a global variable definition is encountered in the sourcePDFdefaultConverter::convertClass() 473PDFdefaultConverter::$_sourcecode 473

Source files for appendix C are stored herePDFdefaultConverter::convertDefine() 473PDFdefaultConverter::convertDocBlock() 473PDFdefaultConverter::convertGlobal() 473PDFdefaultConverter::convertFunction() 473PDFdefaultConverter::$sort_absolutely_everything 472

default PDF Converter wants elements sorted by type as well as alphabeticallyPDFdefaultConverter::$smarty_dir 472PDFdefaultConverter::$outputformat 472PDFdefaultConverter::$name 472PDFdefaultConverter::$pagepackage_pagenums 472PDFdefaultConverter::$pdf 472PDFdefaultConverter::$ric_set 472PDFdefaultConverter::convertInclude() 473PDFdefaultConverter::convertMethod() 473PDFdefaultConverter::getClassLink() 474PDFdefaultConverter::getCData() 474PDFdefaultConverter::getDefineLink() 474PDFdefaultConverter::getExampleLink() 475PDFdefaultConverter::getFileSourceName() 475PDFdefaultConverter::generateFormattedClassTrees() 474

returns a template-enabled array of class treesPDFdefaultConverter::Convert_RIC() 473

Convert README/INSTALL/CHANGELOG file contents to output formatPDFdefaultConverter::convertPage() 473PDFdefaultConverter::convertPackagepage() 473PDFdefaultConverter::convertParams() 473PDFdefaultConverter::convertTutorial() 473PDFdefaultConverter::convertVar() 473PDFdefaultConverter::$leftindex 472PDFdefaultConverter::$curpagepackage 472phpDocumentorTWordParser::getWord() 361

Retrieve a token for the phpDocumentorTParserphpDocumentorTWordParser::getSource() 361

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 811: PhpDocumentor 1.2.2 Manual

phpDocumentorTWordParser::setup() 361Uses http://www.php.net/token_get_all to tokenize the source code.

phpDocumentorTWordParser::tokenEquals() 361Utility function to determine whether two tokens from the tokenizer are equal

ParserPDF.inc 469This class handles the XML-based CezPDF markup language created to allow

phpDocumentorTWordParser::getFileSource() 360phpDocumentorTWordParser::findGlobal() 360

Tell the phpDocumentorTWordParser to return the entire global variable if it is found.

phpDocumentorTWordParser::addFileSource() 359Wrapper for addSource() used to retrieve the entire source code

phpDocumentorTWordParser 359Like WordParser, but expects an array of tokens from the tokenizer instead of a string.

phpDocumentorTWordParser::addSource() 359Generate source token arrays organized by line number

phpDocumentorTWordParser::backupPos() 360phpDocumentorTWordParser::concatTokens() 360

Utility function to convert a series of tokens into a stringPHPDOCUMENTOR_PDF_EVENT_CONTENT 469

used for parsing stuff between <text>PHPDOCUMENTOR_PDF_EVENT_FONT 469

when <font> is found in an ezText inputPDFdefaultConverter.inc 471PHPDOCUMENTOR_PDF_STATE_TEXT 470

when <text> is found in an ezText inputPDFdefaultConverter 471

PDF output converter.PDFdefaultConverter::$classpackage_pagenums 471PDFdefaultConverter::$curclasspackage 472PHPDOCUMENTOR_PDF_STATE_PDFFUNCTION 470

when <pdffunction> is found in an ezText inputPHPDOCUMENTOR_PDF_STATE_NEWPAGE 469

when <newpage/> is found in an ezText inputPHPDOCUMENTOR_PDF_EVENT_PDFFUNCTION 469

when <pdffunction> is found in an ezText inputPHPDOCUMENTOR_PDF_EVENT_NEWPAGE 469

when <newpage/> is found in an ezText inputPHPDOCUMENTOR_PDF_EVENT_TEXT 469

when <text> is found in an ezText inputPHPDOCUMENTOR_PDF_STATE_CONTENT 469

used for parsing stuff between <text>PHPDOCUMENTOR_PDF_STATE_FONT 469

when <font> is found in an ezText inputPDFdefaultConverter::getFunctionLink() 475PDFdefaultConverter::getGlobalLink() 475phpdocpdf::dots() 481phpdocpdf::bullet() 481phpdocpdf::ezNewPage() 481phpdocpdf::ezOutput() 481phpdocpdf::ezText() 481phpdocpdf::ezProcessText() 481

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 812: PhpDocumentor 1.2.2 Manual

phpdocpdf::addMessage() 481phpdocpdf::$_save 481phpdocpdf::$listType 481phpdocpdf::$indexContents 481phpdocpdf::$reportContents 481phpdocpdf::$set_pageNumbering 481phpdocpdf::$_colorStack 481phpdocpdf::getColor() 482

This really should be in the parent classphpdocpdf::getYPlusOffset() 482phpdocpdf::textcolor() 482phpdocpdf::setupTOC() 482phpdocpdf::validHTMLColor() 482phpdocpdf::_ezText() 482phpdoc.php 700

Source codephpdocpdf::setHTMLColor() 482phpdocpdf::setColorArray() 482phpdocpdf::index() 482phpdocpdf::indent() 482phpdocpdf::IndexLetter() 482phpdocpdf::orderedBullet() 482phpdocpdf::rf() 482phpdocpdf::$indents 481phpdocpdf::$font_dir 481PDFdefaultConverter::getTutorialId() 477PDFdefaultConverter::getState() 477PDFdefaultConverter::getVarLink() 477PDFdefaultConverter::mystrnatcasecmp() 478PDFdefaultConverter::Output() 478

calls Cezpdf::ezOutput() and writes documentation.pdf to targetDirPDFdefaultConverter::getSourceLink() 477PDFdefaultConverter::getSourceAnchor() 477

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a @filesource tag.

PDFdefaultConverter::getMethodLink() 476PDFdefaultConverter::getGlobalValue() 476PDFdefaultConverter::getPageLink() 476PDFdefaultConverter::getPageName() 476PDFdefaultConverter::getRootTree() 476

return formatted class tree for the Class Trees pagePDFdefaultConverter::postProcess() 478PDFdefaultConverter::returnLink() 478PDFParser::parse() 479

Parse text for PDFParser XML tags, and add the text to the PDF filePDFParser::getParserEventName() 479

Return the name of the parser eventPDFParser::setupStates() 480

setup the parser tokens, and the pushEvent/popEvent arraysphpdocpdf 480phpdocpdf::$converter 481PDFParser 479PDFdefaultConverter::writeSource() 479

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 813: PhpDocumentor 1.2.2 Manual

PDFdefaultConverter::setTemplateDir() 478PDFdefaultConverter::returnSee() 478

Returns a bookmark using Cezpdf 009PDFdefaultConverter::TranslateTag() 478

Used to translate an XML DocBook tag from a tutorial by reading the options.ini file for the template.

PDFdefaultConverter::unmangle() 479PDFdefaultConverter::writeExample() 479phpDocumentorTWordParser.inc 357parserXMLDocBookTag::startCData() 356

Begin a new CData sectionParser::setupStates() 330

setup the parser tokens, and the pushEvent/popEvent arraysParser::returnTagHandler() 330

handles @returnParser::staticvarTagHandler() 331

handles @staticvarParser::usesTagHandler() 331

handles @usesparserDescParser 332

Parses a DocBlock description to retrieve abstract representations ofParser::varTagHandler() 331

handles @varParser::parse() 330

Parse a new fileParser::paramTagHandler() 329

handles @paramParser::getParserEventName() 328

Debugging function, takes an event number and attempts to return its nameParser::exampleTagHandler() 328

handles @exampleParser::globalTagHandler() 328

handles @globalParser::invalidTagHandler() 329

Handles tags like '@filesource' that only work in PHP 4.3.0+Parser::packageTagHandler() 329

handles @packageparserDescParser::addText() 332

add input as text to the current paragraph or listparserDescParser::defaultHandler() 333

basic handlingphpDocumentorTParser::$eventHandlers 336phpDocumentorTParser 335

Tokenizer-based parser for PHP source codephpDocumentorTParser::$inlineTagHandlers 336phpDocumentorTParser::$source_location 336

relative path of the parsed file from the base parse directoryphpDocumentorTParser::checkEventPop() 336

this function checks whether parameter $word is a token for popping the current event off ofthe Event Stack.

parserDescParser::setupStates() 335setup the parser tokens, and the pushEvent/popEvent arrays

parserDescParser::setContext() 334

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 814: PhpDocumentor 1.2.2 Manual

parserDescParser::dropContext() 333Pop a context off of the context stack

parserDescParser::doSimpleList() 333Return a simple list, if found

parserDescParser::getContext() 334Retrieve the current top-level tag to add text into

parserDescParser::getParserEventName() 334parserDescParser::parse() 334

Parse a long or short description for tagsParser::endTag() 327

Called to clean up at the end of parsing a @tag in a docblockParser::defaultTagHandler() 327

Handles all standard tags that only have a descriptionPHPDOCUMENTOR_EVENT_TUTORIAL 319

Tutorial published to IntermediateParser with this eventPHPDOCUMENTOR_EVENT_README_INSTALL_CHANGELOG 319

Contents of README/INSTALL/CHANGELOG files published to IntermediateParser with thisevent

PHPDOCUMENTOR_EVENT_VAR 319Class Variable published to IntermediateParser with this event

phpDocumentorTParser.inc 324PHPDOCUMENTOR_PDP_EVENT_ATTRIBUTES 325

when tag attributes name="value" are foundPHPDOCUMENTOR_EVENT_PAGE 319

New File (page) published to IntermediateParser with this eventPHPDOCUMENTOR_EVENT_PACKAGEPAGE 319

Package-level page published to IntermediateParser with this eventPHPDOCUMENTOR_EVENT_MESSAGE 319PHPDOCUMENTOR_EVENT_INCLUDE 319

Include (include/require/include_once/include_once) published to IntermediateParser with thisevent

PHPDOCUMENTOR_EVENT_NEWFILE 319use to inform ErrorTracker of a new file being parsed

PHPDOCUMENTOR_EVENT_NEWLINENUM 319use to inform ErrorTracker of the next line number being parsed

PHPDOCUMENTOR_EVENT_NEWSTATE 319use to inform IntermediateParser of a new element being parsed

PHPDOCUMENTOR_PDP_EVENT_CDATA 325when <![CDATA[ ]]> is found

PHPDOCUMENTOR_PDP_EVENT_ENTITY 325when tag attributes name="value" are found

Parser::categoryTagHandler() 326handles @category

Parser 326PHP Parser for PHP 4.2.3-

Parser::checkEventPop() 327this function checks whether parameter $word is a token for popping the current event off ofthe Event Stack.

Parser::checkEventPush() 327this function checks whether parameter $word is a token for pushing a new event onto theEvent Stack.

Parser::configWordParser() 327tell the parser's WordParser $wp to set up tokens to parse words by.

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 815: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_STATE_TAG 326when a DocBook <tag> is found

PHPDOCUMENTOR_PDP_STATE_PROGRAMLISTING 325when <programlisting> is found

PHPDOCUMENTOR_PDP_EVENT_TAG 325when a DocBook <tag> is found

PHPDOCUMENTOR_PDP_EVENT_PROGRAMLISTING 325when <programlisting> is found

PHPDOCUMENTOR_PDP_STATE_ATTRIBUTES 325when tag attributes name="value" are found

PHPDOCUMENTOR_PDP_STATE_CDATA 325when <![CDATA[ ]]> is found

PHPDOCUMENTOR_PDP_STATE_ENTITY 325when tag attributes name="value" are found

phpDocumentorTParser::checkEventPush() 336this function checks whether parameter $word is a token for pushing a new event onto theEvent Stack.

phpDocumentorTParser::configWordParser() 337parserXMLDocBookTag::$name 352

Name of the tagparserXMLDocBookTag::$attributes 352

Attributes from the XML tagparserXMLDocBookTag::$_cdata 353parserXMLDocBookTag::$_description 353

Set to <refpurpose> in <refsynopsisdiv>parserXMLDocBookTag::$_id 353parserXMLDocBookTag 352

a standard XML DocBook TagparserEntity::Convert() 351PackagePageElements.inc 350

Data structures used in parsing XML DocBook-based tutorialsppageParser::setupStates() 345

set up invariant Parser variablesparserCData 350

Represents <![CDATA[ ]]> sections.parserCData::Convert() 351parserEntity 351

a standard entity like &rdquo;parserXMLDocBookTag::$_title 353parserXMLDocBookTag::add() 353

Add contents to this tag.parserXMLDocBookTag::hasTitle() 356

Determine whether the docbook element has a titleparserXMLDocBookTag::getTOC() 355

Retrieve either the table of contents index, or the location thatparserXMLDocBookTag::setId() 356

If the id attribute is present, this method will set its idparserXMLDocBookTag::setTitle() 356

Set the title of a DocBook tag section.parserXMLDocBookTag::setTOC() 356parserXMLDocBookTag::getTitle() 355

Retrieve Converter-specific formatting of the title of this elementparserXMLDocBookTag::getSubsection() 355

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 816: PhpDocumentor 1.2.2 Manual

Retrieve the contents of a subsectionparserXMLDocBookTag::addCData() 354

add a word to CDataparserXMLDocBookTag::addAttribute() 353

Add an xml tag attribute name="value" pairparserXMLDocBookTag::Convert() 354parserXMLDocBookTag::endCData() 354

Adds $_cdata to $valueparserXMLDocBookTag::getId() 354

Return converter-specific formatting of ID.ppageParser::parse() 345

Parse a new fileppageParser::handleInlineDockeyword() 344

handler for INLINE_DOCKEYWORD.phpDocumentor_HighlightParser::$_filesourcepath 340

Path to file being highlighted, if this is from a @filesource tagphpDocumentor_HighlightParser::$_converter 339

Used to retrieve highlighted tokensphpDocumentor_HighlightParser::$_line 340

contents of the current source code line as it is parsedphpDocumentor_HighlightParser::$_output 340

Highlighted source is built up in this stringphpDocumentor_HighlightParser::configWordParser() 340

Give the word parser necessary data to begin a new parsephpDocumentor_HighlightParser::$tagHandlers 339

event handlers for @tagsphpDocumentor_HighlightParser::$eventHandlers 338phpDocumentorTParser::parse() 337

Parse a new filephpDocumentorTParser::getToken() 337phpDocumentorTParser::setupEventStates() 337

Creates the state arraysphpDocumentorTParser::setupStates() 337

setup the parser tokens, and the pushEvent/popEvent arraysphpDocumentor_HighlightParser 337

Highlights source code using parse()phpDocumentor_HighlightParser::newLineNum() 341phpDocumentor_HighlightParser::parse() 341

Parse a new fileppageParser 343

Global package page parserphpDocumentor_HighlightWordParser::setup() 343ppageParser::$package 344ppageParser::$subpackage 344ppageParser::defaultHandler() 344

Handles all non-inline tagsphpDocumentor_HighlightWordParser::nextToken() 343

Retrieve the position of the next token that will be parsedphpDocumentor_HighlightWordParser::getWord() 343

Retrieve the next tokenphpDocumentor_HighlightParser::setupStates() 342

Initialize all parser state variablesphpDocumentor_HighlightParser::setLineNum() 342

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 817: PhpDocumentor 1.2.2 Manual

Start the parsing at a certain line numberphpDocumentor_HighlightParser::_retrieveType() 342phpDocumentor_HighlightWordParser 342

Retrieve tokens from an array of tokens organized by line numbersphpDocumentor_HighlightWordParser::backupPos() 343

back the word parser to the previous token as defined by $last_tokenparserDocBlock::addExample() 273

adds an @example tagparserDocBlock::addAccess() 273

add an @access tag to the tags arrayProceduralPages::addPage() 190

sets up the $pages arrayProceduralPages::addInclude() 190

sets up the $includesbyfile array using $curfileProceduralPages::addPagePackage() 190

Changes the package of the page represented by $pathProceduralPages::getPathInfo() 190ProceduralPages::ignorePage() 191

moves a page from the $pages array to the $ignorepages arrayProceduralPages::getRealPath() 190ProceduralPages::addGlobal() 189

sets up the $globalsbyfile array using $curfileProceduralPages::addFunction() 189

sets up the $functionsbyfile array using $curfileProceduralPages::$pages 188

array of all procedural pages ordered by nameProceduralPages::$pagepackages 188

array of packages ordered by full pathProceduralPages::$pathpages 189

array of all procedural page names ordered by full path to the fileProceduralPages::addClassPackageToFile() 189

adds a package from a class to the current fileProceduralPages::addDefine() 189

sets up the $definesbyfile array using $curfileProceduralPages::pathMatchesParsedFile() 191ProceduralPages::replaceElement() 191

Used to align an element with the package of its parent page prior to Conversion.Publisher::$tokens 193Publisher::$subscriber 193

Array of references objects that have Subscribed to this publisherPublisher::publishEvent() 193Publisher::subscribe() 193

Adds a subscriber to the $subscriber array().parserB 194

Used for <<b>> in a descriptionPublisher::$pushEvent 193Publisher::$popEvent 193ProceduralPages::setParseBase() 191ProceduralPages::setName() 191

Change a page's name from its file to alias $nameProceduralPages::setupPagePackages() 191

if there is one class package in a file, the parent path inherits the package if its package isdefault.

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 818: PhpDocumentor 1.2.2 Manual

ProceduralPages::setupPages() 191Adjusts packages of all pages and removes name conflicts within a package

Publisher 192a class for handling the publishing of data

ProceduralPages::$pageconflicts 188Namespace conflicts within all documented pages

ProceduralPages::$pageclasspackages 188array of packages assigned to classes in a file, ordered by fullpath

phpDocumentor_setup::setQuietMode() 185phpDocumentor_setup::setParsePrivate() 185phpDocumentor_setup::setTargetDir() 185phpDocumentor_setup::setTemplateBase() 185phpDocumentor_setup::setTitle() 185phpDocumentor_setup::setPackageOutput() 185phpDocumentor_setup::setJavadocDesc() 185phpDocumentor_setup::readConfigFile() 185

Get phpDocumentor settings from a user configuration filephpDocumentor_setup::readCommandLineSettings() 184

Get phpDocumentor settings from command-line or web interfacephpDocumentor_setup::setDirectoriesToParse() 185phpDocumentor_setup::setFilesToParse() 185phpDocumentor_setup::setIgnore() 185phpDocumentor_setup::setupConverters() 185ProceduralPages 185

Intermediate procedural page parsing structure.ProceduralPages::$globalsbyfile 187

array of parsed global variables organized by the full path of the file that contains the globalvariable definition.

ProceduralPages::$globalconflicts 187Namespace conflicts within all documented packages of functions

ProceduralPages::$globalsbynamefile 187array of file names organized by global variables that are in the file.

ProceduralPages::$ignorepages 188array of all procedural pages ordered by name that have been ignored via -po or @accessprivate or @ignore

ProceduralPages::$includesbyfile 188array of parsed includes organized by the full path of the file that contains the include.

ProceduralPages::$functionsbynamefile 187array of file names organized by functions that are in the file.

ProceduralPages::$functionsbyfile 187array of parsed functions organized by the full path of the file that contains the function.

ProceduralPages::$defineconflicts 186Namespace conflicts within all documented packages of functions

ProceduralPages::$curfile 186file being parsed, used in every add function to match up elements with the file that containsthem

ProceduralPages::$definesbyfile 186array of parsed defines organized by the full path of the file that contains the define.

ProceduralPages::$definesbynamefile 186array of file names organized by defines that are in the file.

ProceduralPages::$functionconflicts 186Namespace conflicts within all documented packages of functions

parserB::Convert() 195

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 819: PhpDocumentor 1.2.2 Manual

parserBr 195Used for <<br>> in a description

parserLicenseTag 208represents "@license"

parserFileSourceTag::writeSource() 207parserLicenseTag::$keyword 208

always 'license'parserLinkTag 209

represents "@link"parserNameTag 209

This class represents the @name tagparserLinkTag::$keyword 209

always 'link'parserFileSourceTag::getSourceLink() 207parserFileSourceTag::ConvertSource() 207parserFileSourceTag::$keyword 206

Always "filesource"parserFileSourceTag 205

represents "@filesource"parserFileSourceTag::$path 206parserFileSourceTag::$source 206parserFileSourceTag::Convert() 206

Return a link to the highlighted source and generate the sourceparserNameTag::$keyword 210

tag nameparserNameTag::Convert() 210parserSeeTag::$keyword 213

always 'see'parserSeeTag 213

represents "@see"parserSeeTag::Convert() 214parserStaticvarTag 214

Represents "@staticvar"parserStaticvarTag::$keyword 214

always 'staticvar'parserReturnTag::Convert() 212

sets up $converted_returnTypeparserReturnTag::$returnType 212

the type a function returnsparserParamTag::$keyword 211

always 'param'parserParamTag 210

Represents "@param"parserReturnTag 211

represents "@return"parserReturnTag::$converted_returnType 212

contains a link to the documentation for a class passed as a type in @return, @var or @paramparserReturnTag::$keyword 212

always 'return'parserExampleTag::getSourceLink() 205

Retrieve a converter-specific link to the exampleparserExampleTag::ConvertSource() 204parserKbd::Convert() 198

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 820: PhpDocumentor 1.2.2 Manual

parserKbd 198Used for <<kbd>> in a description

parserList 199Used for lists <<ol>> and <<ul>>

parserList::$items 199parserList::$numbered 199parserI::Convert() 197parserI 197

Used for <<i>> in a descriptionparserCode 196

Used for <<code>> in a descriptionparserBr::Convert() 195parserCode::Convert() 196parserDescVar 196

Used for <<var>> in a descriptionparserDescVar::Convert() 197parserList::addItem() 199parserList::addList() 199parserAccessTag::Convert() 203parserAccessTag::$keyword 203

tag nameparserAccessTag::getString() 203

No inline tags are possible, returns 'public', 'protected' or 'private'parserExampleTag 204

represents "@example"parserExampleTag::$keyword 204

always "example"parserAccessTag::$isvalid 202

set to true if the returned tag has a value type of private, protectedparserAccessTag 202

This class represents the @access tagparserPre 200

Used for <<pre>> in a descriptionparserList::Convert() 199parserPre::Convert() 200parserSamp 201

Used for <<samp>> in a descriptionparserSamp::Convert() 201phpDocumentor_setup::parseIni() 184

Parse configuration file phpDocumentor.iniphpDocumentor_setup::parseHiddenFiles() 184PHPDOCUMENTOR_PDP_STATE_P 139

when <<p>> is found in a descPHPDOCUMENTOR_PDP_STATE_LIST 139

when <<ul>>/<<ol>> is found in a descPHPDOCUMENTOR_PDP_STATE_PRE 139

when <<pre>> is found in a descPHPDOCUMENTOR_PDP_STATE_SAMP 139

when <<samp>> is found in a descPHPDOCUMENTOR_PDP_STATE_VAR 140

when <<var>> is found in a descPHPDOCUMENTOR_PDP_STATE_SIMLIST 139

when a simple list is found in a desc

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 821: PhpDocumentor 1.2.2 Manual

PHPDOCUMENTOR_PDP_STATE_KBD 139when <<kbd>> is found in a desc

PHPDOCUMENTOR_PDP_STATE_I 139when <<i>> is found in a desc

PHPDOCUMENTOR_PDP_STATE_DOUBLECR 138when \n\n is found in a desc

PHPDOCUMENTOR_PDP_STATE_CODE 138when <<code>> is found in a desc

PHPDOCUMENTOR_PDP_STATE_ESCAPE 138when the << potential escape for tags is found in a desc

PHPDOCUMENTOR_PDP_STATE_ESCAPE_CODE 138when << /code>> is found in a <<code>><</code>> section

PHPDOCUMENTOR_PDP_STATE_ESCAPE_PRE 139when << /pre>> is found in a <<pre>><</pre>> section

phpdoc.inc 141ProceduralPages.inc 142

Intermediate procedural page parsing structure.phpDocumentor_IntermediateParser::$db_template 165phpDocumentor_IntermediateParser::$data 165

$data contains parsed structures for the current page being parsedphpDocumentor_IntermediateParser::$event_handlers 166

the functions which handle output from the ParserphpDocumentor_IntermediateParser::$last 166phpDocumentor_IntermediateParser::$lasttype 166

type of the last parser Element handledphpDocumentor_IntermediateParser::$cur_class 165

Name of the class currently being parsed.phpDocumentor_IntermediateParser::$converters 165

an array of template names indexed by converter namephpDocumentor_out() 146

Print parse information if quiet setting is offPublisher.inc 143

a class for handling the publishing of dataphpDocumentor_IntermediateParser 163

The phpDocumentor_IntermediateParser ClassphpDocumentor_IntermediateParser::$all_packages 164

list of all packages encountered while documenting. Used in automatic linking.

phpDocumentor_IntermediateParser::$classes 164used to keep track of inheritance at the smartest level possible for a

PHPDOCUMENTOR_PDP_STATE_BR 138when <<br>> is found in a desc

PHPDOCUMENTOR_PDP_STATE_B 138when <<b>> is found in a desc

PHPDOCUMENTOR_WEBSITE 131phpDocumentor version

PHPDOCUMENTOR_VER 131phpDocumentor version

PHPDOCUMENTOR_WINDOWS 131ParserDescCleanup.inc 136

All of the functions to clean up and handle the long description of a DocBlock are in this file.

PHPDOCUMENTOR_PDP_EVENT_B 136

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 822: PhpDocumentor 1.2.2 Manual

when <<b>> is found in a descphpDocumentor_parse_ini_file() 130

Parse an .ini filephpDocumentor_ConfigFileList() 130

used in phpdoc.php and new_phpdoc.phpphpDocumentor tags 34phpDocumentor Tutorials 26phpDocumentor Inline tags 74phpdoc.php 128

Web Interface to phpDocumentorPATH_DELIMITER 130PHPDOCUMENTOR_PDP_EVENT_BR 136

when <<br>> is found in a descPHPDOCUMENTOR_PDP_EVENT_CODE 136

when <<code>> is found in a descPHPDOCUMENTOR_PDP_EVENT_PRE 137

when <<pre>> is found in a descPHPDOCUMENTOR_PDP_EVENT_P 137

when <<p>> is found in a descPHPDOCUMENTOR_PDP_EVENT_SAMP 137

when <<samp>> is found in a descPHPDOCUMENTOR_PDP_EVENT_SIMLIST 138

when a simple list is found in a descPHPDOCUMENTOR_PDP_EVENT_VAR 138

when <<var>> is found in a descPHPDOCUMENTOR_PDP_EVENT_LIST 137

when <<ul>>/<<ol>> is found in a descPHPDOCUMENTOR_PDP_EVENT_KBD 137

when <<kbd>> is found in a descPHPDOCUMENTOR_PDP_EVENT_ESCAPE 136

when the << potential escape for tags is found in a descPHPDOCUMENTOR_PDP_EVENT_DOUBLECR 136

when \n\n is found in a descPHPDOCUMENTOR_PDP_EVENT_ESCAPE_CODE 137

when << /code>> is found in a <<code>><</code>> sectionPHPDOCUMENTOR_PDP_EVENT_ESCAPE_PRE 137

when << /pre>> is found in a <<pre>><</pre>> sectionPHPDOCUMENTOR_PDP_EVENT_I 137

when <<i>> is found in a descphpDocumentor_IntermediateParser::$packagecategories 166

Used to determine the category for tutorials.phpDocumentor_IntermediateParser::$packageoutput 167

array of packages to parser and output documentation for, if not all packages should be documented

phpDocumentor_IntermediateParser::Output() 180call this method once parsing has completed.

phpDocumentor_IntermediateParser::handleVar() 179handles post-parsing of class vars

phpDocumentor_IntermediateParser::parsePackagePage() 180Backward-compatibility only, use the new tutorials for more power

phpDocumentor_IntermediateParser::setParsePrivate() 181set display of elements marked with @access private

phpDocumentor_IntermediateParser::setQuietMode() 181

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 823: PhpDocumentor 1.2.2 Manual

set parsing information output mode (quiet or verbose)phpDocumentor_IntermediateParser::handleTutorial() 179

handle post-parsing of Tutorials.phpDocumentor_IntermediateParser::handlePage() 179

handles post-parsing of procedural pagesphpDocumentor_IntermediateParser::handleGlobal() 177

handles post-parsing of global variablesphpDocumentor_IntermediateParser::handleFunction() 177

handles post-parsing of functionsphpDocumentor_IntermediateParser::handleInclude() 178

handles post-parsing of include/require/include_once/include_oncephpDocumentor_IntermediateParser::handleMethod() 178

handles post-parsing of class methodsphpDocumentor_IntermediateParser::handlePackagePage() 178

handles post-parsing of Package-level documentation pages.phpDocumentor_IntermediateParser::setTargetDir() 181

Sets the output directoryphpDocumentor_IntermediateParser::setTemplateBase() 181

Sets the template base directoryphpDocumentor_setup::$render 184

Used to organize output from the Parser before ConversionphpDocumentor_setup::$parse 184

The main parserphpDocumentor_setup::$setup 184

Used to parse command-line optionsphpDocumentor_setup::checkIgnoreTag() 184phpDocumentor_setup::createDocs() 184phpDocumentor_setup::$packages 183

Packages to create documentation forphpDocumentor_setup::$ignore_files 183

contents of --ignore commandlinephpDocumentor_setup 182phpDocumentor_IntermediateParser::_guessPackage() 182

Guess the package/subpackage based on subdirectory if the --pear optionphpDocumentor_setup::$dirs 182

contents of --directory commandlinephpDocumentor_setup::$files 183

contents of --filename commandlinephpDocumentor_setup::$hidden 183

contents of --hidden commandlinephpDocumentor_IntermediateParser::HandleEvent() 176

called via Parser::parse() and Parser's inherited method Publisher::publishEvent()

phpDocumentor_IntermediateParser::handleDocBlock() 176handles post-parsing of DocBlocks

phpDocumentor_IntermediateParser::$ric 170Stores parsed CHANGELOG/INSTALL/README files

phpDocumentor_IntermediateParser::$quietMode 169set in Setup.inc.php to the value of the quitemode commandline option.

phpDocumentor_IntermediateParser::$targetDir 170used to set the output directory

phpDocumentor_IntermediateParser::$templateBase 170

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 824: PhpDocumentor 1.2.2 Manual

used to set the template base directoryphpDocumentor_IntermediateParser::$title 170phpDocumentor_IntermediateParser::$proceduralpages 169

used to keep track of all elements in a procedural page. Handles namephpDocumentor_IntermediateParser::$private_class 169

this variable is used to prevent parsing of elements with an @ignore tagphpDocumentor_IntermediateParser::$package_parents 167

Keeps track of packages of classes that have parent classes in another package. Used in automatic linking.

phpDocumentor_IntermediateParser::$package_pages 167array of parsed package pages

phpDocumentor_IntermediateParser::$pages 168phpDocumentor_IntermediateParser::$parsePrivate 168

set in Setup.inc.php to the value of the parseprivate commandlinephpDocumentor_IntermediateParser::$privatepages 168

Put away a page that has been @ignored or @access private if !$parsePrivate

phpDocumentor_IntermediateParser::$type 171type of the current parser Element being handled

phpDocumentor_IntermediateParser::$uses 171phpDocumentor_IntermediateParser::Convert() 174

Interface to the ConverterphpDocumentor_IntermediateParser::ClasselementCmp() 174

does a natural case sort on two class elements (either parserClass, parserMethod or parserVar

phpDocumentor_IntermediateParser::elementCmp() 175does a natural case sort on two parserElement descendants

phpDocumentor_IntermediateParser::handleClass() 175handles post-parsing of classes

phpDocumentor_IntermediateParser::handleDefine() 175handles post-parsing of defines

phpDocumentor_IntermediateParser::addUses() 173Add all the @uses tags from $element to the $uses array so that @usedby

phpDocumentor_IntermediateParser::addPrivatePage() 173Adds a parserPage element to the parserData element in $this->privatepages[$path]

phpDocumentor_IntermediateParser::addElementToPage() 172adds a processed descendant of parserElement to the $pages array or $privatepages array

phpDocumentor_IntermediateParser::addConverter() 171Add a converter name to use to the list of converters

phpDocumentor_IntermediateParser::addPackageParent() 172If the parent class of $class is in a different package, adds it to the

phpDocumentor_IntermediateParser::addPage() 172Replaces the parserPage represented by $this->pages[$path] with $page

phpDocumentor_IntermediateParser::addPageIfNecessary() 173add a new parserPage to the $pages array if none is found

parserTag 215used to represent standard tags like @access, etc.

parserTag::$keyword 215tag name (see, access, etc.)

parserData::explicitDocBlock() 260

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 825: PhpDocumentor 1.2.2 Manual

Tells this page that its DocBlock was not implicitparserData::addTutorial() 260parserData::getClasses() 260

returns a list of all classes declared in a fileparserData::getLink() 260parserData::getTutorial() 260

If this file has a tutorial associated with it, returns a link to the tutorial.

parserData::getName() 260Get the output-safe filename (. changed to _)

parserData::addLink() 259parserData::addElement() 259parserData::$privateclasselements 259

array of parsed class elements with @access privateparserData::$parent 259

parserPage element that is this parserData's parent, or false if not set.

parserData::$privateelements 259array of parsed elements with @access private

parserData::$tutorial 259parserData::$type 259

Type is used by many functions to skip the hassle of ifparserData::hasExplicitDocBlock() 260

If the page-level DocBlock was present in the source, returns trueparserData::isClean() 260parserPage::$package 262parserPage::$name 262

phpdoc-safe name (only letters, numbers and _)parserPage::$packageOutput 262

Used to limit output, contains contents of --packageoutput commandline.parserPage::$parserVersion 262parserPage::$path 262parserPage::$modDate 262

not implemented yetparserPage::$id 261

not implemented in this version, will be used to link xml output pagesparserData::setParent() 261parserData::setDocBlock() 260parserPage 261

Contains information about a PHP file, used to group procedural elements together.

parserPage::$category 261parserPage::$file 261

filename.ext (no path)parserData::$links 258

array of links descended from abstractLinkparserData::$elements 258

array of parsed elementsparserTocInlineTag::Convert() 247parserTocInlineTag::$inlinetype 246

always 'toc'parserTocInlineTag::setPath() 247parserTocInlineTag::setTOC() 247

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 826: PhpDocumentor 1.2.2 Manual

parserTutorialInlineTag 247Represents inline links to external tutorial documentation

parserTocInlineTag 246Represents {@toc} for table of contents generation in tutorials

parserSourceInlineTag::Strlen() 246only used to determine blank lines. {@source} will not be blank,

parserSourceInlineTag::Convert() 245parserSourceInlineTag::arrayConvert() 244parserSourceInlineTag::getString() 245parserSourceInlineTag::setSource() 245parserSourceInlineTag::stringConvert() 245parserTutorialInlineTag::Convert() 248pageLink 253

procedural page linkparserData 257

Contains an in-memory representation of all documentable elements (parserPage, parserFunction, parserDefine, parserInclude, parserClass, parserMethod, parserVar) and their DocBlocks (parserDocBlock).

parserBase::setValue() 257parserData::$classelements 258

array of parsed class elementsparserData::$clean 258

used by phpDocumentor_IntermediateParser::handleDocBlock() toparserData::$docblock 258

DocBlock (parserDocBlock) for this page, or false if not setparserBase::getValue() 257parserBase::getType() 257ParserData.inc 256

Parser Data StructurespageLink::$type 253parserBase 256

Base class for all elementsparserBase::$type 256

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserBase::$value 257

set to different things by its descendantsparserPage::$source 263

Tokenized source code of the fileparserPage::$sourceLocation 263

relative source locationparserDocBlock::$explicitpackage 270

fix for bug 591396parserDocBlock::$explicitcategory 270

fix for bug 708559parserDocBlock::$funcglobals 270

array of global variable data.parserDocBlock::$hasaccess 271

whether this DocBlock has an @access tagparserDocBlock::$hasname 271

whether this DocBlock has a @name tagparserDocBlock::$endlinenumber 270

Line number in the source on which this docblock ends

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 827: PhpDocumentor 1.2.2 Manual

parserDocBlock::$desc 269parserDesc::hasSource() 269parserDesc::hasInheritDoc() 269parserDesc::replaceInheritDoc() 269

replaces {@inheritdoc} with the contents of the parent DocBlockparserDocBlock 269

Represents a docblock and its components, $desc, $sdesc, $tags, and also $params forfunctions

parserDocBlock::$category 269parserDocBlock::$linenumber 271

Line number in the source on which this docblock beginsparserDocBlock::$package 271parserDocBlock::$subpackagedescrip 272

description of subpackage parsed from @package tagparserDocBlock::$subpackage 272parserDocBlock::$tags 272

array of parserTagsparserDocBlock::$unknown_tags 273

array of unrecognized parserTagsparserDocBlock::$var 273

This is either a parserVarTag or false if no var tag is presentparserDocBlock::$statics 272

array of static variable data.parserDocBlock::$sdesc 272parserDocBlock::$params 271

array of param data.parserDocBlock::$packagedescrip 271

description of package parsed from @package tagparserDocBlock::$processed_desc 271parserDocBlock::$processed_sdesc 272parserDocBlock::$return 272

This is either a parserReturnTag or false if no return tag is presentparserDesc::add() 268parserDesc::$type 268

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserPage::getType() 264parserPage::getSourceLocation() 264parserPage::setFile() 264

Sets the name to display in documentation (can be an alias set with @name)parserPage::setName() 264parserPage::setPackageOutput() 264parserPage::getPath() 264parserPage::getParseData() 263

Not implemented in this versionparserPage::$type 263

Type is used by many functions to skip the hassle of ifparserPage::$subpackage 263parserPage::getFile() 263parserPage::getName() 263parserPage::getPackageOutput() 263parserPage::setPath() 265parserPage::setSource() 265

Sets the source code of the file for highlighting.

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 828: PhpDocumentor 1.2.2 Manual

parserStringWithInlineTags::setSource() 267Pass source code to any {@source} tags contained within the string for later conversion.

parserStringWithInlineTags::hasInlineTag() 267Determine whether the string contains any inline tags

parserStringWithInlineTags::trimmedStrlen() 267equivalent to trim(strlen($string))

ParserDocBlock.inc 268DocBlock Parser Classes

parserDesc 268represents a short or long description in a DocBlock (parserDocBlock)

parserStringWithInlineTags::getString() 266return the string unconverted (all inline tags are taken out - this

parserStringWithInlineTags::Convert() 266Use to convert the string to a real string with all inline tags parsed and linked

parserStringWithInlineTags 265Used to represent strings that contain inline tags, so that they can be properly parsed at linktime

parserPage::setSourceLocation() 265parserStringWithInlineTags::$type 266

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserStringWithInlineTags::$value 266

array of strings and parserInlineTagsparserStringWithInlineTags::add() 266

equivalent to the . operator ($a = $b . $c)parserSourceInlineTag::$_class 244parserSourceInlineTag::$start 244

First line of source code to displayPDERROR_IGNORE_TAG_IGNORED 228

warning triggered when an @ignore tag is used in a DocBlock preceding a method, variable,include, or global variable

PDERROR_ID_MUST_BE_INLINE 228warning triggered when an id attribute in a tutorial docbook tag is not

PDERROR_ILLEGAL_PACKAGENAME 228warning triggered when the package or subpackage name is illegal

PDERROR_INHERITANCE_CONFLICT 228warning triggered when inheritance could be from more than one class

PDERROR_INLINETAG_IN_SEE 228warning triggered when an example's path from @example /path/to/example.php

PDERROR_INHERITDOC_DONT_WORK_HERE 228warning triggered by {@inheritdoc} in a non-inheritable situation

PDERROR_GLOBAL_NOT_FOUND 228warning triggered when there are multiple @name tags in a docblock

PDERROR_FUNCTION_HAS_NONAME 227warning triggered by a function with no name

PDERROR_DOCBLOCK_GOES_CLASS 227warning triggered when the first docblock in a file with a @package tag precedes a class. In this case, the class gets the docblock.

PDERROR_DOCBLOCK_CONFLICT 227warning triggered by a page-level docblock preceding a source element

PDERROR_ELEMENT_IGNORED 227warning triggered when a duplicate element is encountered that will be ignored by thedocumentor

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 829: PhpDocumentor 1.2.2 Manual

PDERROR_EMPTY_EXAMPLE_TITLE 227warning triggered by @example path/to/example with no title

PDERROR_EXAMPLE_NOT_FOUND 227warning triggered when an example's path from @example /path/to/example.php

PDERROR_INTERNAL_NOT_CLOSED 228warning triggered when an {@internal}} tag is not closed

PDERROR_MALFORMED_GLOBAL_TAG 228warning triggered when there are multiple @name tags in a docblock

PDERROR_MULTIPLE_SUBPACKAGE_TAGS 229warning triggered when there are multiple @subpackage tags in a docblock

PDERROR_MULTIPLE_RETURN_TAGS 229warning triggered when there are multiple @return tags in a docblock

PDERROR_MULTIPLE_VAR_TAGS 229warning triggered when there are multiple @var tags in a docblock

PDERROR_NEED_WHITESPACE 229warning triggered when an entire page is ignored because of @access private

PDERROR_NO_CONVERTERS 229warning triggered when a converter is passed tophpDocumentor_IntermediateParser::addConverter() that is not a class

PDERROR_MULTIPLE_PARENT 229warning triggered when inheritance could be from more than one class

PDERROR_MULTIPLE_PACKAGE_TAGS 229warning triggered when there are multiple @package tags in a docblock

PDERROR_MULTIPLE_ACCESS_TAGS 229warning triggered when there are multiple @access tags in a docblock

PDERROR_MALFORMED_TAG 228warning triggered by an empty tag

PDERROR_MULTIPLE_CATEGORY_TAGS 229warning triggered by more than 1 @category tag

PDERROR_MULTIPLE_GLOBAL_TAGS 229warning triggered when there are multiple @name tags in a docblock

PDERROR_MULTIPLE_NAME_TAGS 229warning triggered when there are multiple @name tags in a docblock

PDERROR_DB_TEMPLATE_UNTERMINATED 227warning triggered when a docblock template is never turned off with /**#@-* / (no space)

PDERROR_CONVERTER_OVR_GFCT 227warning triggered when a child converter doesn't override getFormattedClassTrees()

parserUsedByTag::$keyword 218Always "usedby"

parserUsedByTag 218This is a virtual tag, it is created by @uses to cross-reference the used element

parserUsedByTag::Convert() 218parserUsesTag 219

represents "@uses"parserUsesTag::$keyword 219

Always "uses"parserTutorialTag::Convert() 217parserTutorialTag::$keyword 217

Always "tutorial"parserTag::Convert() 216parserTag::$type 215

Type is used by many functions to skip the hassle of if get_class($blah) == 'parserBlah'parserTag::getString() 216

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 830: PhpDocumentor 1.2.2 Manual

parserTag::HandleEvent() 216Called by the parserDescParser when processing a description.

parserTutorialTag 217represents "@tutorial"

parserUsesTag::Convert() 219Return a link to documentation for other element, and description of how it is used

parserUsesTag::getDescription() 220Get the description of how the element used is being used.

PDERROR_CLASS_EXISTS 226warning triggered when inheritance could be from more than one class

PDERROR_CLASS_CONFLICT 226warning triggered when classes in the same package have the same name

PDERROR_CLASS_NOT_IN_PACKAGE 226warning triggered when a getClassByPackage is called and can't find the class

PDERROR_CLASS_PARENT_NOT_FOUND 227warning triggered when an entire page is ignored because of @access private

PDERROR_CONVERTER_NOT_FOUND 227warning triggered when a converter is passed tophpDocumentor_IntermediateParser::addConverter() that is not a class

PDERROR_CHILD_TUTORIAL_NOT_FOUND 226warning triggered when a tutorial's child in the .ini file doesn't exist in the

PDERROR_CANT_NEST_IN_B 226warning triggered when another tag is nested in &lt;b&gt; - not allowed inphpDocumentor

parserVarTag::$keyword 221always 'var'

parserVarTag 220represents "@var"

parserVarTag::$returnType 221the type a var has

PDERROR_ACCESS_WRONG_PARAM 226warning triggered when the arguments to @access are neither public nor private

PDERROR_CANT_HAVE_INLINE_IN_TAGNAME 226warning triggered when an inline tag is found inside an xml tag name in a package page

PDERROR_NO_CONVERTER_HANDLER 229warning triggered when an example's path from @example /path/to/example.php

PDERROR_NO_DOCBOOK_ID 230warning triggered in tutorial parsing if there is a missing {@id} inline tag

parserIdInlineTag::$tutorial 239full name of the tutorial

parserIdInlineTag::$subpackage 239subpackage of the {@id}

parserIdInlineTag::Convert() 239parserInheritdocInlineTag 240

Represents the inheritdoc inline tag, used by classes/methods/vars to inheritparserInheritdocInlineTag::$inlinetype 240

always 'inheritdoc'parserIdInlineTag::$package 239

package of the {@id}parserIdInlineTag::$inlinetype 239

always 'id'PDERROR_UNTERMINATED_INLINE_TAG 232

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 831: PhpDocumentor 1.2.2 Manual

warning triggered when an {@inline tag} is not terminated (no } before the * / ending thecomment)

PDERROR_UNTERMINATED_ENTITY 232warning triggered by an unterminated entity in a tutorial

parserIdInlineTag 238Represents the inline {@id} tag for tutorials

parserIdInlineTag::$category 238category of the {@id}

parserIdInlineTag::$id 239section/subsection name

parserInheritdocInlineTag::Convert() 240parserInlineTag 241

Use this element to represent an {@inline tag} like {@link}parserSourceInlineTag 243

represents inline source tag, used for function/method sourceparserLinkInlineTag::ConvertPart() 243parserSourceInlineTag::$end 243

Last line to displayparserSourceInlineTag::$inlinetype 244

always 'source'parserSourceInlineTag::$source 244

tokenized source organized by line numbers for php 4.3.0+, the oldparserLinkInlineTag::Convert() 243parserLinkInlineTag::$linktext 242

text to display in the link, can be different from the link for standardparserInlineTag::$type 241

Element typeparserInlineTag::$inlinetype 241

the name of the inline tag (like link)parserInlineTag::getString() 242parserInlineTag::Strlen() 242parserLinkInlineTag 242

represents inline linksPDERROR_UNTERMINATED_ATTRIB 232

warning triggered when a subsection's title is asked for, but the subsection is not foundPDERROR_UNMATCHED_TUTORIAL_TAG 232

warning triggered when a docbook tag is not properly matchedPDERROR_PDFFUNCTION_NO_FUNC 230

warning triggered when a <pdffunction:funcname /> tag is used in the PDFPDERROR_PARSEPRIVATE 230

warning triggered when an entire page is ignored because of @access privatePDERROR_PDF_METHOD_DOESNT_EXIST 230

warning triggered when a <pdffunction:funcname /> tag is used in the PDFPDERROR_PDF_TEMPVAR_DOESNT_EXIST 231

warning triggered when a <pdffunction:funcname arg=$tempvar/> tag is used in the PDFPDERROR_PRIVATE_ASSUMED 231

warning triggered when no @access private tag is used in a global variable/method/varPDERROR_PARENT_NOT_FOUND 230

warning triggered when parent class doesn't existPDERROR_PACKAGEOUTPUT_DELETES_PARENT_FILE 230

warning triggered when there are multiple @name tags in a docblockPDERROR_NO_PAGE_LEVELDOCBLOCK 230

warning triggered when a file does not contain a page-level docblock

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 832: PhpDocumentor 1.2.2 Manual

PDERROR_NO_PACKAGE_TAG 230warning triggered when no @package tag is used in a page-level or class-level DocBlock

PDERROR_OVERRIDDEN_PACKAGE_TAGS 230warning triggered when there a @package tag is used in a function, define, method, var orinclude

PDERROR_OVERRIDDEN_SUBPACKAGE_TAGS 230warning triggered when there a @subpackage tag is used in a function, define, method, var orinclude

PDERROR_PACKAGECAT_SET 230warning triggered when a package is already associated with a category, and

PDERROR_SOURCECODE_IGNORED 231warning triggered by sourcecode="on", if PHP < 4.3.0

PDERROR_SOURCE_TAG_FUNCTION_NOT_FOUND 231warning triggered when a { @source } inline tag is used in a docblock not preceding a function

PDERROR_UNCLOSED_TAG 232warning triggered when a DocBlock html tag is unclosed

PDERROR_TUTORIAL_SUBSECTION_NOT_FOUND 232warning triggered when a subsection's title is asked for, but the subsection is not found

PDERROR_UNKNOWN_COMMANDLINE 232warning triggered when an entire page is ignored because of @access private

PDERROR_UNKNOWN_TAG 232warning triggered when classes in the same package have the same name

PDERROR_UNMATCHED_LIST_TAG 232warning triggered when a docblock has an unmatched &lt;ol&gt; or&lt;ul&gt;

PDERROR_TUTORIAL_NOT_FOUND 232warning triggered when a tutorial is referenced via @tutorial/{ @tutorial} and is not found

PDERROR_TUTORIAL_IS_OWN_GRANDPA 231warning triggered when a tutorial's child lists the parent tutorial as a child tutorial

PDERROR_TAG_NOT_HANDLED 231warning triggered by @filesource, if PHP < 4.3.0

PDERROR_SOURCE_TAG_IGNORED 231warning triggered when an {@source} tag is found in a short description

PDERROR_TEMPLATEDIR_DOESNT_EXIST 231warning triggered by non-existent template directory

PDERROR_TEXT_OUTSIDE_LI 231warning triggered when text in a docblock list is not contained in

PDERROR_TUTORIAL_IS_OWN_CHILD 231warning triggered when a tutorial lists itself as a child tutorial

phpDocumentor Guide to Creating Fantastic Documentation 1

RRecordWarning::$type 236

name of global variable that descriptors for this warning/error is keptRecordWarning::$num 236

error numberRecordWarning::output() 237

prints the warningrecurseDir() 535README 682RecordWarning::$linenum 236

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 833: PhpDocumentor 1.2.2 Manual

line number of the file this error occurred inRecordWarning::$file 236

file this error occurred inRecordError::$type 235

name of global variable that descriptors for this warning/error is keptRecordError 235

encapsulates error informationRecordError::output() 235

prints the errorRecordWarning 236

encapsulates warning informationRecordWarning::$data 236

error stringrecurseDir() 126

SSmarty_Compiler::_compile_section_start() 577

Compile {section ...} tagSmarty_Compiler::_compile_registered_object_tag() 577

compile a registered object tagSmarty_Compiler::_compile_smarty_ref() 577

Compiles references of type $smarty.fooSmarty_Compiler::_compile_tag() 577

Compile a template tagSmarty_Compiler::_expand_quoted_text() 578

expand quoted text with embedded variablesSmarty_Compiler::_compile_plugin_call() 576

compiles call to plugin of type $type with name $nameSmarty_Compiler::_compile_insert_tag() 576

Compile {insert ...} tagSmarty_Compiler::_compile_foreach_start() 575

Compile {foreach ...} tag.Smarty_Compiler::_compile_file() 575

compile a template fileSmarty_Compiler::_compile_if_tag() 575

Compile {if ...} tagSmarty_Compiler::_compile_include_php_tag() 576

Compile {include ...} tagSmarty_Compiler::_compile_include_tag() 576

Compile {include ...} tagSmarty_Compiler::_load_filters() 578

load pre- and post-filtersSmarty_Compiler::_parse_attrs() 578

Parse attribute stringSmarty_Compiler::_syntax_error() 580

display Smarty syntax errorSmarty_Compiler::_parse_var_props() 580

compile single variable and section properties token into PHP code

smarty_block_strip() 581Smarty {strip}{/strip} block plugin

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 834: PhpDocumentor 1.2.2 Manual

smarty_block_textformat() 582Smarty {textformat}{/textformat} block plugin

smarty_function_assign() 583Smarty_Compiler::_parse_vars_props() 579

compile multiple variables and section properties tokens into PHP code

Smarty_Compiler::_parse_var() 579parse variable expression into PHP code

Smarty_Compiler::_parse_is_expr() 578Parse is expression

Smarty_Compiler::_parse_conf_var() 578parse configuration variable expression into PHP code

Smarty_Compiler::_parse_modifiers() 578parse modifier chain into PHP code

Smarty_Compiler::_parse_parenth_args() 579parse arguments in function call parenthesis

Smarty_Compiler::_parse_section_prop() 579parse section property expression into PHP code

Smarty_Compiler::_compile_custom_tag() 575compile custom function tag

Smarty_Compiler::_compile_compiler_tag() 574compile the custom compiler tag

Smarty::template_exists() 570Checks whether requested template exists.

Smarty::register_resource() 570Registers a resource to fetch a template

Smarty::trigger_error() 571trigger Smarty error

Smarty::unregister_block() 571Unregisters block function

Smarty::unregister_compiler_function() 571Unregisters compiler function

Smarty::register_prefilter() 570Registers a prefilter function to apply to a template before compiling

Smarty::register_postfilter() 570Registers a postfilter function to apply to a compiled template after compilation

Smarty::register_function() 569Registers custom function to be used in templates

Smarty::register_compiler_function() 568Registers compiler function

Smarty::register_modifier() 569Registers modifier to be used in templates

Smarty::register_object() 569Registers object to be used in templates

Smarty::register_outputfilter() 569Registers an output filter function to apply to a template output

Smarty::unregister_function() 571Unregisters custom function

Smarty::unregister_modifier() 571Unregisters modifier

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 835: PhpDocumentor 1.2.2 Manual

Smarty_Compiler 573Template compiling class

Smarty::_generate_debug_output() 573generate debug output

Smarty_Compiler::_add_plugin() 573add plugin

Smarty_Compiler::_compile_block_tag() 574compile block function tag

Smarty_Compiler::_compile_capture_tag() 574Compile {capture} .. {/capture} tags

Smarty::_assign_smarty_interface() 573assign $smarty interface variable

Smarty::unregister_resource() 572Unregisters a resource

Smarty::unregister_object() 572Unregisters object

Smarty::unregister_outputfilter() 572Unregisters an outputfilter function

Smarty::unregister_postfilter() 572Unregisters a postfilter function

Smarty::unregister_prefilter() 572Unregisters a prefilter function

smarty_function_assign_debug_info() 584Smarty {assign_debug_info} function plugin

smarty_function_config_load() 585Smarty {config_load} function plugin

smarty_modifier_nl2br() 624Smarty plugin

smarty_modifier_lower() 623Smarty lower modifier plugin

smarty_modifier_rawurlencode() 625Smarty plugin

smarty_modifier_regex_replace() 626Smarty regex_replace modifier plugin

smarty_modifier_replace() 627Smarty replace modifier plugin

smarty_modifier_indent() 622Smarty indent modifier plugin

smarty_modifier_htmlentities() 621Smarty plugin

smarty_modifier_date_format() 616Smarty date_format modifier plugin

smarty_modifier_count_words() 615Smarty count_words modifier plugin

smarty_modifier_debug_print_var() 618Smarty debug_print_var modifier plugin

smarty_modifier_default() 619Smarty default modifier plugin

smarty_modifier_escape() 620Smarty escape modifier plugin

smarty_modifier_spacify() 628Smarty spacify modifier plugin

smarty_modifier_string_format() 629

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 836: PhpDocumentor 1.2.2 Manual

Smarty string_format modifier pluginshared.escape_special_chars.php 636

Smarty shared pluginsmarty_outputfilter_trimwhitespace_replace() 635smarty_function_escape_special_chars() 636

escape_special_chars common functionshared.make_timestamp.php 637

Smarty shared pluginsmarty_make_timestamp() 637

Function: smarty_make_timestamp<br> Purpose: used by other smarty functions to make a timestamp from a string.

smarty_outputfilter_trimwhitespace() 635Smarty trimwhitespace outputfilter plugin

smarty_modifier_wordwrap() 634Smarty wordwrap modifier plugin

smarty_modifier_strip() 630Smarty strip modifier plugin

smarty_modifier_strip_tags() 631Smarty strip_tags modifier plugin

smarty_modifier_truncate() 632Smarty truncate modifier plugin

smarty_modifier_upper() 633Smarty upper modifier plugin

smarty_modifier_count_sentences() 614Smarty count_sentences modifier plugin

smarty_modifier_count_paragraphs() 613Smarty count_paragraphs modifier plugin

smarty_function_html_options() 596smarty_function_html_image() 594

Smarty {html_image} function pluginsmarty_function_html_options_optgroup() 596smarty_function_html_options_optoutput() 596smarty_function_html_radios() 597

Smarty {html_radios} function pluginsmarty_function_html_checkboxes_output() 593smarty_function_html_checkboxes() 592

Smarty {html_checkboxes} function pluginsmarty_function_cycle() 587

Smarty {cycle} function pluginsmarty_function_counter() 586

Smarty {counter} function pluginsmarty_function_debug() 589

Smarty {debug} function pluginsmarty_function_eval() 590

Smarty {eval} function pluginsmarty_function_fetch() 591

Smarty {fetch} pluginsmarty_function_html_radios_output() 598smarty_function_html_select_date() 599

Smarty {html_select_date} pluginsmarty_function_var_dump() 609

Smarty plugin

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 837: PhpDocumentor 1.2.2 Manual

smarty_function_popup_init() 608Smarty {popup_init} function plugin

smarty_modifier_capitalize() 610Smarty capitalize modifier plugin

smarty_modifier_cat() 611Smarty cat modifier plugin

smarty_modifier_count_characters() 612Smarty count_characters modifier plugin

smarty_function_popup() 607Smarty {popup} function plugin

smarty_function_math() 606Smarty {math} function plugin

smarty_function_html_select_time() 601Smarty {html_select_time} function plugin

smarty_function_html_table() 602Smarty {html_table} function plugin

smarty_function_html_table_cycle() 603smarty_function_mailto() 604

Smarty {mailto} function pluginSmarty::register_block() 568

Registers block function to be used in templatesSmarty::load_filter() 568

load a filter of specified type and nameSTATE_NOEVENTS 322

out of < ? php tagSTATE_METHOD_LOGICBLOCK 322

currently parsing the method body using the HighlightParserSTATE_OUTPHP 322

currently out of php codeSTATE_PHPCODE 322

currently parsing php codeSTATE_QUOTE 322

currently parsing a quoteSTATE_METHOD 322

currently parsing a method using the HighlightParserSTATE_LOGICBLOCK 322

currently parsing a { } blockSTATE_INCLUDE 321

currently parsing an include/require/include_once/include_onceSTATE_GLOBAL_VALUE 321

currently parsing the default value in a global variable declarationSTATE_INCLUDE_PARAMS 321

currently parsing the stuff in ( ) of a define statementSTATE_INCLUDE_PARAMS_PARENTHESIS 321

currently parsing an inner parenthetical statement of aninclude/includeonce/require/requireonce( )

STATE_INLINE_DOCKEYWORD 322currently parsing an inline tag like { @link} in a DocBlock

STATE_QUOTE_VAR 322currently parsing a {$encapsed_var} using the HighlightParser

STATE_SINGLEQUOTE 322currently parsing a string enclosed in single quotes (')

SMARTY_PHP_ALLOW 550

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 838: PhpDocumentor 1.2.2 Manual

SMARTY_DIR 549Sets SMARTY_DIR only if user application has not already defined it

SMARTY_PHP_PASSTHRU 550SMARTY_PHP_QUOTE 550SMARTY_PHP_REMOVE 550Smarty.class.php 549

Project: Smarty: the PHP compiling template engine File: Smarty.class.php

switchDirTree() 535STATE_STATIC_VAR 322

currently parsing a "static $var1, $var2;" declaration in a functionSTATE_STATIC_VAR_VALUE 322

currently parsing the value in a "static $var1 = x" declaration in a functionSTATE_TAGS 322

currently parsing the @tag block of a docblockSTATE_VAR 323

currently parsing a Class variableSTATE_GLOBAL 321

currently parsing a global variable declarationSTATE_FUNC_GLOBAL 321

currently parsing a "global $var1, $var2;" declaration in a functionSTATE_CLASS_MEMBER 320

currently parsing a class member using the HighlightParserSTATE_CLASS 320

currently parsing a class definitionSTATE_COMMENT 320

currently parsing a short comment //STATE_COMMENTBLOCK 320

currently parsing a long comment /x x/ where x is an asteriskSTATE_DEFINE 320

currently parsing a define statementSTATE_ARRAY 320

currently parsing an arraysortfiles() 148

Sorting functions for the file listSMART_PATH_DELIMITER 131switchDirTree() 126setup_dirs() 134

Recursively move contents of $struc into associative arrayset_dir() 135

Recursively add all the subdirectories of $contents to $dir without erasing anything inSetup.inc.php 144

This was all in phpdoc.inc, and now encapsulates the complexitySTATE_DEFINE_PARAMS 320

currently parsing the stuff in ( ) of a define statementSTATE_DEFINE_PARAMS_PARENTHESIS 320

currently parsing an inner parenthetical statement of a define( )STATE_EOFQUOTE 321

currently parsing a string defined using Perl <<<STATE_END_DOCBLOCK_TEMPLATE 321

currently parsing the value in a "static $var1 = x" declaration in a functionSTATE_ESCAPE 321

used when a backslash is encountered in parsing a string or other escapable entity

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 839: PhpDocumentor 1.2.2 Manual

STATE_FUNCTION 321currently parsing a Function or Method

STATE_FUNCTION_PARAMS 321currently parsing the stuff in ( ) of a function definition

STATE_END_CLASS 321used to tell Render that a class has been completely parsed, and to flush buffers

STATE_DOCKEYWORD_EMAIL 320currently parsing an email in brackets in an @author tag of a DocBlock

STATE_DESC 320currently parsing the desc part of a docblock

STATE_DOCBLOCK 320currently parsing a DocBlock

STATE_DOCBLOCK_TEMPLATE 320currently parsing the value in a "static $var1 = x" declaration in a function

STATE_DOCKEYWORD 320currently parsing a @tag in a DocBlock

Smarty_Compiler.class.php 551Project: Smarty: the PHP compiling template engine File: Smarty_Compiler.class.php

Smarty 556Smarty::$use_sub_dirs 564

This tells Smarty whether or not to use sub dirs in the cache/ and templates_c/ directories. sub directories better organized, but may not work well with PHP safe mode enabled.

Smarty::$undefined 563The value of "undefined". Leave it alone :-)

Smarty::append() 564appends values to template variables

Smarty::append_by_ref() 564appends values to template variables by reference

Smarty::assign() 564assigns values to template variables

Smarty::$trusted_dir 563This is an array of directories where trusted php scripts reside.

Smarty::$template_dir 563The name of the directory where templates are located.

Smarty::$right_delimiter 562The right delimiter used for the template tags.

Smarty::$request_vars_order 562The order in which request variables are registered, similar to variables_order in php.ini E = Environment, G = GET, P = POST, C = Cookies, S = Server

Smarty::$secure_dir 562This is the list of template directories that are considered secure. This is used only if $security is enabled. One directory per array element. $template_dir is in this list implicitly.

Smarty::$security 562This enables template security. When enabled, many things are restricted

Smarty::$security_settings 563These are the security settings for Smarty. They are used only when $security is enabled.

Smarty::assign_by_ref() 565assigns values to template variables by reference

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 840: PhpDocumentor 1.2.2 Manual

Smarty::clear_all_assign() 565clear all the assigned template variables.

Smarty::get_config_vars() 567Returns an array containing config variables

Smarty::fetch() 567executes & returns or displays the template results

Smarty::get_registered_object() 567return a reference to a registered object

Smarty::get_template_vars() 567Returns an array containing template variables

Smarty::is_cached() 568test to see if valid cache exists for this template

Smarty::display() 566executes & displays the template results

Smarty::config_load() 566load configuration values

Smarty::clear_all_cache() 565clear the entire contents of cache (all templates)

Smarty::clear_assign() 565clear the given assigned template variable.

Smarty::clear_cache() 565clear cached content for the given template and cache id

Smarty::clear_compiled_tpl() 566clears compiled version of specified template resource, or all compiled template files if one is not specified.

Smarty::$plugins_dir 562An array of directories searched for plugins.

Smarty::$php_handling 561This determines how Smarty handles "<?php ... ?>" tags in templates.

Smarty::$compile_check 558This tells Smarty whether to check for recompiling or not. Recompiling does not need to happen unless a template or config file is changed.

Smarty::$compiler_file 558The file that contains the compiler class. This can a full pathname, or relative to the php_include path.

Smarty::$compile_dir 558The directory where compiled templates are located.

Smarty::$compile_id 558Set this if you want different sets of compiled files for the same templates. This is useful for things like different languages.

Smarty::$config_booleanize 558This tells whether or not to automatically booleanize config file variables.

Smarty::$compiler_class 557The class used for compiling templates.

Smarty::$caching 557This enables template caching.

Smarty::$cache_dir 556The name of the directory for cache files.

Smarty::$autoload_filters 556This indicates which filters are automatically loaded into Smarty.

Smarty::$cache_handler_func 556The function used for cache file handling. If not set, built-in caching is used.

Smarty::$cache_lifetime 557

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 841: PhpDocumentor 1.2.2 Manual

This is the number of seconds cached content will persist.Smarty::$cache_modified_check 557

Only used when $caching is enabled. If true, then If-Modified-Since headers are respected with cached content, and appropriate HTTP headers are sent.

Smarty::$config_class 559The class used to load config vars.

Smarty::$config_dir 559The directory where config files are located.

Smarty::$default_template_handler_func 560If a template cannot be found, this PHP function will be executed.

Smarty::$default_modifiers 560This is a list of the modifiers to apply to all template variables.

Smarty::$force_compile 561This forces templates to compile every time. Useful for development or debugging.

Smarty::$global_assign 561These are the variables from the globals array that are assigned to all templates automatically. This isn't really necessary any more, you can use the $smarty var to access them directly.

Smarty::$left_delimiter 561The left delimiter used for the template tags.

Smarty::$debug_tpl 560This is the path to the debug console template. If not set, the default one will be used.

Smarty::$debugging_ctrl 560This determines if debugging is enable-able from the browser.

Smarty::$config_fix_newlines 559This tells whether or not automatically fix newlines in config files.

Smarty::$config_overwrite 559This tells if config file vars of the same name overwrite each other or not.

Smarty::$config_read_hidden 559This tells whether hidden sections [.foobar] are readable from the tempalates or not. Normally you would never allow this since that is the point behind hidden sections: the application can access them, but the templates cannot.

Smarty::$debugging 559If debugging is enabled, a debug console window will display when the page loads (make sure your browser allows unrequested popup windows)

showImage() 126Allows png's with alpha transparency to be displayed in IE 6

TtutorialLink::$type 254tutorialLink::addLink() 254top.php 699

Source codetutorialLink::$title 254tutorialLink::$section 254tokenizer_ext 131

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 842: PhpDocumentor 1.2.2 Manual

tutorialLink 253tutorial link

top.php 127Advanced Web Interface to phpDocumentor

Uutilities.php 126Using the PDFParser XML templating language 119

Vvdump_par() 535varLink::$type 255varLink 254

class variable linkvdump_par() 126

WWordParser::getSource() 362

Retrieve source code for the last function/methodWordParser::getPos() 362

Returns the current pointer position, or 1 character after the end of the wordWordParser::getBlock() 362

UnusedWordParser::getWord() 362

Retrieve a token from the token listWordParser::setPos() 363

Set the internal cursor within the source codeWordParser::setWhitespace() 363

set parser to return or strip whitespaceWordParser::setup() 363

Initialize the WordParserWordParser::setSeperator() 363WordParser::backupPos() 362

Backup to the previous token so that it can be retrieved again in a new context.

WordParser 361Retrieves tokens from source code for use by the Parser

Writing templates for the HTMLframes Converter 111Writing templates for the CHMdefault Converter 110Writing a Converter, Methods 101Writing templates for the HTMLSmarty Converter 117Writing templates for the PDFdefault Converter 118WordParser.inc 358Writing templates for the XMLDocBook Converter 121Writing a New Converter 91

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 843: PhpDocumentor 1.2.2 Manual

XXMLDocBookpeardoc2Converter::$_peardoc2_constants 504

Constants, used for constants.tplXMLDocBookpeardoc2Converter::$_peardoc2_globals 504

Global Variables, used for globals.tplXMLDocBookpeardoc2Converter::$_write_constants_xml 504XMLDocBookpeardoc2Converter::$_write_globals_xml 504XMLDocBookpeardoc2Converter::$template_options 504

template options. Currently only 1 recognized option usepearXMLDocBookpeardoc2Converter::$sourceloc 504XMLDocBookpeardoc2Converter::$path 503

path of current page being convertedXMLDocBookpeardoc2Converter::$sort_absolutely_everything 503

Pass elements by package, simplifies generation of package.xml/category.xmlXMLDocBookpeardoc2Converter::$sort_page_contents_by_type 503

XMLDocBookConverter wants elements sorted by type as well as alphabeticallyXMLDocBookpeardoc2Converter::addSummaryToPackageXml() 505XMLDocBookpeardoc2Converter::Br() 505XMLDocBookpeardoc2Converter::convertInclude() 506

Converts include elements for template outputXMLDocBookpeardoc2Converter::convertMethod() 506

Converts method for template outputXMLDocBookpeardoc2Converter::convertPackagePage() 507

Does nothing - use tutorials for DocBookXMLDocBookpeardoc2Converter::convertPage() 507

converts procedural pages for template outputXMLDocBookpeardoc2Converter::convertGlobal() 506

Converts global variables for template outputXMLDocBookpeardoc2Converter::convertFunction() 506

Converts function for template output - does nothing in peardoc2!XMLDocBookpeardoc2Converter::convertClass() 505

Converts class for template outputXMLDocBookpeardoc2Converter::convertDefine() 505

Converts defines for template outputXMLDocBookpeardoc2Converter::ConvertErrorLog() 505

Create errors.html template file outputXMLDocBookpeardoc2Converter::$page_dir 503

output directory for the current procedural page being processedXMLDocBookpeardoc2Converter::$page_data 503

template for the procedural page currently being processedXMLDocBookpeardoc2Converter::$class_data 501

template for the class currently being processedXMLDocBookpeardoc2Converter::$class_dir 501

output directory for the current class being processedXMLDocBookpeardoc2Converter::$current 501

contains all of the template procedural page element loop data needed for the current templateXMLDocBookpeardoc2Converter::$currentclass 501

contains all of the template class element loop data needed for the current templateXMLDocBookpeardoc2Converter::$class 501

name of current class being convertedXMLDocBookpeardoc2Converter::$category 501

peardoc2 Category

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 844: PhpDocumentor 1.2.2 Manual

XMLDocBookConverter::writeNewPPage() 500XMLDocBookpeardoc2Converter 500

XML DocBook converter.XMLDocBookpeardoc2Converter::$base_dir 501

target directory passed on the command-line.XMLDocBookpeardoc2Converter::$function_data 502XMLDocBookpeardoc2Converter::$juststarted 502

controls formatting of parser informative outputXMLDocBookpeardoc2Converter::$packagexml 502

Contents of the packagename.xml file are stored in this template variableXMLDocBookpeardoc2Converter::$package_pages 503

array of converted package page names.XMLDocBookpeardoc2Converter::$page 503

name of current page being convertedXMLDocBookpeardoc2Converter::$outputformat 502XMLDocBookpeardoc2Converter::$name 502XMLDocBookpeardoc2Converter::$leftindex 502

indexes of elements by package that need to be generatedXMLDocBookpeardoc2Converter::$local 502

whether a @see is going to be in the $base_dir, or in a package/subpackage subdirectory of$base_dir

XMLDocBookpeardoc2Converter::$method_data 502XMLDocBookpeardoc2Converter::convertTutorial() 507

Convert tutorials for outputXMLDocBookpeardoc2Converter::convertVar() 508

Does nothing in this converterXMLDocBookpeardoc2Converter::makeLeft() 515XMLDocBookpeardoc2Converter::Output() 515

Generate the constants.xml, packagename.xml, and globals.xml filesXMLDocBookpeardoc2Converter::postProcess() 515XMLDocBookpeardoc2Converter::prepareDocBlock() 515XMLDocBookpeardoc2Converter::getVarLink() 514XMLDocBookpeardoc2Converter::getTutorialId() 514XMLDocBookpeardoc2Converter::getPageName() 513XMLDocBookpeardoc2Converter::getRootTree() 513

return formatted class tree for the Class Trees pageXMLDocBookpeardoc2Converter::getSourceAnchor() 514

Retrieve a Converter-specific anchor to a segment of a source code file parsed via a @filesource tag.

XMLDocBookpeardoc2Converter::ProgramExample() 515XMLDocBookpeardoc2Converter::rcNatCmp() 515

does a nat case sort on the specified second level value of the arrayXMLDocBookpeardoc2Converter::unmangle() 516XMLDocBookpeardoc2Converter::wordwrap() 516XMLDocBookpeardoc2Converter::writeNewPPage() 516

Does nothingXMLDocBookpeardoc2Converter::writeSource() 516

Does nothingXMLDocBookpeardoc2Converter::type_adjust() 516XMLDocBookpeardoc2Converter::setTemplateDir() 516XMLDocBookpeardoc2Converter::rcNatCmp1() 515

does a nat case sort on the specified second level value of the array.XMLDocBookpeardoc2Converter::returnLink() 515

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 845: PhpDocumentor 1.2.2 Manual

XMLDocBookpeardoc2Converter::returnSee() 516This function takes an abstractLink descendant and returns an html link

XMLDocBookpeardoc2Converter::getPageLink() 513XMLDocBookpeardoc2Converter::getMethodLink() 513XMLDocBookpeardoc2Converter::generateChildClassList() 509

returns a list of child classesXMLDocBookpeardoc2Converter::generateElementIndex() 509

does nothingXMLDocBookpeardoc2Converter::generateFormattedClassTree() 509

returns an array containing the class inheritance tree from the root object to the classXMLDocBookpeardoc2Converter::generateFormattedClassTrees() 509

returns a template-enabled array of class treesXMLDocBookpeardoc2Converter::formatPkgIndex() 509

Does nothingXMLDocBookpeardoc2Converter::formatLeftIndex() 508

Creates package/lang/categoryname/packagename.xml for each packageXMLDocBookpeardoc2Converter::endClass() 508

Writes out the template file of $class_data and unsets the template to save memoryXMLDocBookpeardoc2Converter::flushPackageXml() 508XMLDocBookpeardoc2Converter::formatIndex() 508

Does nothingXMLDocBookpeardoc2Converter::generatePkgElementIndex() 510

Generate alphabetical index of all elements by package and subpackageXMLDocBookpeardoc2Converter::generatePkgElementIndexes() 510XMLDocBookpeardoc2Converter::getGlobalLink() 512XMLDocBookpeardoc2Converter::getId() 512

Get the id value needed to allow linkingXMLDocBookpeardoc2Converter::getLink() 512

do that stuff in $template_optionsXMLDocBookpeardoc2Converter::getFunctionLink() 511XMLDocBookpeardoc2Converter::getExampleLink() 511XMLDocBookpeardoc2Converter::getCData() 510XMLDocBookpeardoc2Converter::getClassLink() 510XMLDocBookpeardoc2Converter::getDefineLink() 511XMLDocBookConverter::unmangle() 500XMLDocBookConverter::type_adjust() 500XMLDocBookConverter::$local 486

whether a @see is going to be in the $base_dir, or in a package/subpackage subdirectory of$base_dir

XMLDocBookConverter::$method_data 486XMLDocBookConverter::$name 486XMLDocBookConverter::$outputformat 486XMLDocBookConverter::$leftindex 486

indexes of elements by package that need to be generatedXMLDocBookConverter::$juststarted 486

controls formatting of parser informative outputXMLDocBookConverter::$current 485

contains all of the template procedural page element loop data needed for the current templateXMLDocBookConverter::$currentclass 486

contains all of the template class element loop data needed for the current templateXMLDocBookConverter::$function_data 486XMLDocBookConverter::$package_pages 486

array of converted package page names.

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 846: PhpDocumentor 1.2.2 Manual

XMLDocBookConverter::$page 487name of current page being converted

XMLDocBookConverter::$template_options 488template options. Currently only 1 recognized option usepear

XMLDocBookConverter::convertClass() 488Converts class for template output

XMLDocBookConverter::convertDefine() 488Converts defines for template output

XMLDocBookConverter::ConvertErrorLog() 489Create errors.html template file output

XMLDocBookConverter::$sourceloc 488XMLDocBookConverter::$sort_page_contents_by_type 487

XMLDocBookConverter wants elements sorted by type as well as alphabeticallyXMLDocBookConverter::$page_data 487

template for the procedural page currently being processedXMLDocBookConverter::$page_dir 487

output directory for the current procedural page being processedXMLDocBookConverter::$path 487

path of current page being convertedXMLDocBookConverter::$class_dir 485

output directory for the current class being processedXMLDocBookConverter::$class_data 485

template for the class currently being processedXMLPackagePageParser::$refsect2id 346XMLPackagePageParser::$refsect3id 346XMLPackagePageParser::$_cursection 346XMLPackagePageParser::$_gettoc 346XMLPackagePageParser::$refsect1id 346XMLPackagePageParser::$pars 346XMLPackagePageParser 345

Used to parse XML DocBook-based tutorialsXMLPackagePageParser::$context 345XMLPackagePageParser::$eventHandlers 346XMLPackagePageParser::$_toc 346XMLPackagePageParser::getParserEventName() 347

debugging functionXMLDocBookConverter::$base_dir 485

target directory passed on the command-line.XMLDocBookConverter::$category 485

peardoc2 CategoryXMLDocBookConverter::$class 485

name of current class being convertedXMLDocBookConverter 484

XML DocBook converter.XMLDocBookConverter.inc 484

XML output converter for DocBook.XMLPackagePageParser::parse() 347

Parse a new fileXMLPackagePageParser::setupStates() 348

setup the parser tokens, and the pushEvent/popEvent arraysXMLDocBookpeardoc2Converter.inc 483

XML output converter for DocBook.XMLDocBookConverter::convertFunction() 489

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 847: PhpDocumentor 1.2.2 Manual

Converts function for template outputXMLDocBookConverter::convertGlobal() 489

Converts global variables for template outputXMLDocBookConverter::getRootTree() 498

return formatted class tree for the Class Trees pageXMLDocBookConverter::getTutorialId() 498XMLDocBookConverter::getVarLink() 498XMLDocBookConverter::makeLeft() 498XMLDocBookConverter::getPageName() 498XMLDocBookConverter::getPageLink() 497XMLDocBookConverter::getId() 496

Get the id value needed to allow linkingXMLDocBookConverter::getLink() 497

do that stuff in $template_optionsXMLDocBookConverter::getMethodLink() 497XMLDocBookConverter::Output() 498

This function is not used by HTMLdefaultConverter, but is required by ConverterXMLDocBookConverter::postProcess() 499XMLDocBookConverter::setTargetDir() 500

calls the converter setTargetDir, and then copies any template images and the stylesheet ifthey haven't been copied

XMLDocBookConverter::setTemplateDir() 500XMLDocBookConverter::SmartyInit() 500XMLDocBookConverter::returnSee() 499

This function takes an abstractLink descendant and returns an html linkXMLDocBookConverter::returnLink() 499XMLDocBookConverter::prepareDocBlock() 499XMLDocBookConverter::rcNatCmp() 499

does a nat case sort on the specified second level value of the arrayXMLDocBookConverter::rcNatCmp1() 499

does a nat case sort on the specified second level value of the array.XMLDocBookConverter::getGlobalLink() 496XMLDocBookConverter::getFunctionLink() 495XMLDocBookConverter::convertVar() 491

Converts class variables for template output.XMLDocBookConverter::endClass() 491

Writes out the template file of $class_data and unsets the template to save memoryXMLDocBookConverter::endPage() 492

Writes out the template file of $page_data and unsets the template to save memoryXMLDocBookConverter::formatIndex() 492

HTMLdefaultConverter uses this function to format template index.html and packages.htmlXMLDocBookConverter::convertTutorial() 491XMLDocBookConverter::convertPage() 491

converts procedural pages for template outputXMLDocBookConverter::convertInclude() 490

Converts include elements for template outputXMLDocBookConverter::convertMethod() 490

Converts method for template outputXMLDocBookConverter::convertPackagePage() 490

Converts package page and sets its package as used in $package_pagesXMLDocBookConverter::formatLeftIndex() 492

Generate indexes for li_package.html and classtree output filesXMLDocBookConverter::formatPkgIndex() 493

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu

Page 848: PhpDocumentor 1.2.2 Manual

HTMLdefaultConverter chooses to format both package indexes and the complete index hereXMLDocBookConverter::getCData() 494XMLDocBookConverter::getClassLink() 494XMLDocBookConverter::getDefineLink() 495XMLDocBookConverter::generatePkgElementIndexes() 494XMLDocBookConverter::generatePkgElementIndex() 494

Generate alphabetical index of all elements by package and subpackageXMLDocBookConverter::generateElementIndex() 493

Generate alphabetical index of all elementsXMLDocBookConverter::generateFormattedClassTree() 493

returns an array containing the class inheritance tree from the root object to the classXMLDocBookConverter::generateFormattedClassTrees() 494

returns a template-enabled array of class treesXMLpackagePageParser.inc 325

Generated by phpDocumentor v1.2.2 http://www.phpdoc.org - http://www.sourceforge.net/projects/phpdocu