# tasks/ext/PhpCodeSnifferTask.php

A PHP code sniffer task. Checking the style of one or more PHP source files.

Author
  Dirk Thomas
Package
  phing.tasks.ext
Version
  $Id: PhpCodeSnifferTask.php 1330 2011-10-21 13:36:28Z mrook $

## \PhpCodeSnifferTask
jump to top

Package: phing\tasks\ext

A PHP code sniffer task. Checking the style of one or more PHP source files.

Use {@link Project#createTask} to register a new Task.

Parent(s)
  \Task < \ProjectComponent
Author
  Dirk Thomas
Copyright
  2001,2002 THYRELL. All rights reserved
Version
  $Id: PhpCodeSnifferTask.php 1330 2011-10-21 13:36:28Z mrook $

### Properties

`$allowedFileExtensions= 'array('php')'`
Default value `array('php')`Details

Type

`$configData= 'array()'`
Default value `array()`Details

Type

`string $description= ''`
inherited

description of the taskInherited from: \Task::$description
Details

Type
  string
Inherited_from
  \Task::$description

`\PhingFile $docFile= 'null'`

Holds the outfile for the documentation

Default value `null` Details

Type
  \PhingFile

`string $docGenerator= ''''`

Holds the type of the doc generator

Default value`''`Details

Type
  string

`$encoding= ''iso-8859-1''`
Default value`'iso-8859-1'`Details

Type

`$file= ''`
Details

Type

`$filesets= 'array()'`
Default value `array()`Details

Type

`$format= ''default''`
Default value`'default'`Details

Type

`$formatters= 'array()'`
Default value `array()`Details

Type

`$haltonerror= 'false'`
Default value `false` Details

Type

`$haltonwarning= 'false'`
Default value `false` Details

Type

`$ignorePatterns= 'false'`
Default value `false` Details

Type

`\Location $location= ''`
inherited

stored buildfile locationInherited from: \Task::$location
Details

Type
  \Location
Inherited_from
  \Task::$location

`$noSubdirectories= 'false'`
Default value `false` Details

Type

`\Project $project= 'null'`
inherited

Holds a reference to the project that a project component (a task, a target, etc.) belongs to

A reference to the current project instanceInherited from: \ProjectComponent::$project
Default value `null` Details

Type
  \Project
Inherited_from
  \ProjectComponent::$project

`$reportWidth= '80'`
Default value `80` Details

Type

`$showSniffs= 'false'`
Default value `false` Details

Type

`$showSources= 'false'`
Default value `false` Details

Type

`$showWarnings= 'true'`
Default value `true` Details

Type

`$skipVersionCheck= 'false'`
Default value `false` Details

Type

`$sniffs= 'array()'`
Default value `array()`Details

Type

`$standard= ''Generic''`
Default value`'Generic'`Details

Type

`$tabWidth= '0'`
Default value `0` Details

Type

`\Target $target= ''`
inherited

owning Target objectInherited from: \Task::$target
Details

Type
  \Target
Inherited_from
  \Task::$target

`string $taskName= ''`
inherited

Taskname for loggerInherited from: \Task::$taskName
Details

Type
  string
Inherited_from
  \Task::$taskName

`string $taskType= ''`
inherited

internal taskname (req)Inherited from: \Task::$taskType
Details

Type
  string
Inherited_from
  \Task::$taskType

`$verbosity= '0'`
Default value `0` Details

Type

`\RuntimeConfigurable $wrapper= ''`
inherited

wrapper of the taskInherited from: \Task::$wrapper
Details

Type
  \RuntimeConfigurable
Inherited_from
  \Task::$wrapper

### Methods

`createConfig( ) : \Parameter`

Creates a config parameter for this task

Returns

Type | Description
--- | ---
\Parameter | The created parameter

`createFileSet( ) : \FileSet`

Nested creator, creates a FileSet for this task

Returns

Type | Description
--- | ---
\FileSet | The created fileset object

`createFormatter( ) : \CodeSniffer_FormatterElement`

Create object for nested formatter element.

Returns

Type | Description
--- | ---
\CodeSniffer_FormatterElement |

`getDescription( ) : string`
inherited

Returns the textual description of the task

Inherited from: \Task::getDescription()
Returns

Type | Description
--- | ---
string | The text description of the task

`getLocation( ) : \Location`
inherited

Returns the location within the buildfile this task occurs. Used by {@link BuildException} to give detailed error messages.

Inherited from: \Task::getLocation()
Returns

Type | Description
--- | ---
\Location | The location object describing the position of this task within the buildfile.

`getOwningTarget( ) : \Target`
inherited

Returns the owning target of this task.

Inherited from: \Task::getOwningTarget()
Returns

Type | Description
--- | ---
\Target | The target object that owns this task

`getProject( ) : \Project`
inherited

Returns a reference to current project

Inherited from: \ProjectComponent::getProject()
Returns

Type | Description
--- | ---
\Project | Reference to current porject object

`getRegisterSlot( $slotName ) : void`
inherited

Returns a name

Inherited from: \Task::getRegisterSlot()
Parameters

Name | Type | Description
--- | --- | ---
$slotName |  |

`getRuntimeConfigurableWrapper( ) : \RuntimeConfigurable`
inherited

Returns the wrapper object for runtime configuration

Inherited from: \Task::getRuntimeConfigurableWrapper()
Returns

Type | Description
--- | ---
\RuntimeConfigurable | The wrapper object used by this task

`getTaskName( ) : string`
inherited

Returns the name of task, used only for log messages

Inherited from: \Task::getTaskName()
Returns

Type | Description
--- | ---
string | Name of this task

`getTaskType( ) : string`
inherited

Returns the name of the task under which it was invoked, usually the XML tagname

Inherited from: \Task::getTaskType()
Returns

Type | Description
--- | ---
string | The type of this task (XML Tag)

`init( ) : void`

Load the necessary environment for running PHP_CodeSniffer.

Should throw a BuildException if something goes wrong with the build

This is abstract here, but may not be overloaded by subclasses.

Throws

Exception | Description
--- | ---
\BuildException |

`log( string $msg, integer $level = Project::MSG_INFO ) : void`
inherited

Provides a project level log event to the task.

Inherited from: \Task::log()

@param string $msg The message to be logged.

Parameters

Name | Type | Description
--- | --- | ---
$msg | string | The message to log
$level | integer | The priority of the message

Details

See
  \BuildEvent
See
  \BuildListener

`main( ) : void`

Executes PHP code sniffer against PhingFile or a FileSet

Should throw a BuildException if someting goes wrong with the build

This is abstract here. Must be overloaded by real tasks.

`maybeConfigure( ) : void`
inherited

Configure this task if it hasn't been done already.

Inherited from: \Task::maybeConfigure()
`outputCustomFormat( array $report ) : void`

Outputs the results with a custom format

Parameters

Name | Type | Description
--- | --- | ---
$report | array | Packaged list of all errors in each file

`outputCustomFormatMessages( array $messages, string $type ) : void`

Outputs the messages of a specific type for one file

Parameters

Name | Type | Description
--- | --- | ---
$messages | array |
$type | string |

`perform( ) : void`
inherited

Perfrom this task

Inherited from: \Task::perform()
`printErrorReport( \PHP_CodeSniffer $phpcs ) : int`

Prints the error report.

Parameters

Name | Type | Description
--- | --- | ---
$phpcs | \PHP_CodeSniffer | The PHP_CodeSniffer object containing the errors.

Returns

Type | Description
--- | ---
int | The number of error and warning messages shown.

`setAllowedFileExtensions( array $extensions ) : void`

Sets the allowed file extensions when using directories instead of specific files

Parameters

Name | Type | Description
--- | --- | ---
$extensions | array |

`setDescription( string $desc ) : void`
inherited

Sets a textual description of the task

Inherited from: \Task::setDescription()
Parameters

Name | Type | Description
--- | --- | ---
$desc | string | The text describing the task

`setDocFile( \PhingFile $file ) : void`

Sets the outfile for the documentation

Parameters

Name | Type | Description
--- | --- | ---
$file | \PhingFile | The outfile for the doc

`setDocGenerator( string $generator ) : void`

Sets the type of the doc generator

Parameters

Name | Type | Description
--- | --- | ---
$generator | string | HTML or Text

`setEncoding( string $encoding ) : void`

Sets file encoding

Parameters

Name | Type | Description
--- | --- | ---
$encoding | string |

`setFile( \PhingFile $file ) : void`

File to be performed syntax check on

Parameters

Name | Type | Description
--- | --- | ---
$file | \PhingFile |

`setFormat( string $format ) : void`

Sets the output format

Parameters

Name | Type | Description
--- | --- | ---
$format | string |

`setHaltonerror( boolean $value ) : void`

Sets the haltonerror flag

Parameters

Name | Type | Description
--- | --- | ---
$value | boolean |

`setHaltonwarning( boolean $value ) : void`

Sets the haltonwarning flag

Parameters

Name | Type | Description
--- | --- | ---
$value | boolean |

`setIgnorePatterns( $patterns ) : void`

Sets the ignore patterns to skip files when using directories instead of specific files

Parameters

Name | Type | Description
--- | --- | ---
$patterns |  |

`setLocation( \Location $location ) : void`
inherited

Sets the location within the buildfile this task occurs. Called by the parser to set location information.

Inherited from: \Task::setLocation()
Parameters

Name | Type | Description
--- | --- | ---
$location | \Location | The location object describing the position of this task within the buildfile.

`setNoSubdirectories( boolean $subdirectories ) : void`

Sets the flag if subdirectories should be skipped

Parameters

Name | Type | Description
--- | --- | ---
$subdirectories | boolean |

`setOwningTarget( \Target $target ) : void`
inherited

Sets the owning target this task belongs to.

Inherited from: \Task::setOwningTarget()
Parameters

Name | Type | Description
--- | --- | ---
$target | \Target | Reference to owning target

`setProject( \Project $project ) : void`
inherited

References the project to the current component.

Inherited from: \ProjectComponent::setProject()
Parameters

Name | Type | Description
--- | --- | ---
$project | \Project | The reference to the current project

`setReportWidth( int $width ) : void`

Sets the width of the report

Parameters

Name | Type | Description
--- | --- | ---
$width | int | How wide the screen reports should be.

`setRuntimeConfigurableWrapper( \RuntimeConfigurable $wrapper ) : void`
inherited

Sets the wrapper object this task should use for runtime configurable elements.

Inherited from: \Task::setRuntimeConfigurableWrapper()
Parameters

Name | Type | Description
--- | --- | ---
$wrapper | \RuntimeConfigurable | The wrapper object this task should use

`setShowSniffs( boolean $show ) : void`

Sets the flag if the used sniffs should be listed

Parameters

Name | Type | Description
--- | --- | ---
$show | boolean |

`setShowSources( boolean $show ) : void`

Sets the flag if sources should be shown

Parameters

Name | Type | Description
--- | --- | ---
$show | boolean | Whether to show sources or not

`setShowWarnings( boolean $show ) : void`

Sets the flag if warnings should be shown

Parameters

Name | Type | Description
--- | --- | ---
$show | boolean |

`setSkipVersionCheck( boolean $value ) : void`

Sets the skipversioncheck flag

Parameters

Name | Type | Description
--- | --- | ---
$value | boolean |

`setSniffs( string $sniffs ) : void`

Sets the sniffs which the standard should be restricted to

Parameters

Name | Type | Description
--- | --- | ---
$sniffs | string |

`setStandard( string $standard ) : void`

Sets the coding standard to test for

Parameters

Name | Type | Description
--- | --- | ---
$standard | string | The coding standard

`setTabWidth( int $width ) : void`

Sets the tab width to replace tabs with spaces

Parameters

Name | Type | Description
--- | --- | ---
$width | int |

`setTaskName( $name ) : string`
inherited

Sets the name of this task for log messages

Inherited from: \Task::setTaskName()
Parameters

Name | Type | Description
--- | --- | ---
$name |  |

Returns

Type | Description
--- | ---
string | A string representing the name of this task for log

`setTaskType( string $name ) : void`
inherited

Sets the type of the task. Usually this is the name of the XML tag

Inherited from: \Task::setTaskType()
Parameters

Name | Type | Description
--- | --- | ---
$name | string | The type of this task (XML Tag)

`setVerbosity( int $level ) : void`

Sets the verbosity level

Parameters

Name | Type | Description
--- | --- | ---
$level | int |

## \PhpCodeSnifferTask_FormatterElement
jump to top

Package: phing\tasks\ext

Base class for those classes that can appear inside the build file as stand alone data types.

This class handles the common description attribute and provides a default implementation for reference handling and checking for circular references that is appropriate for types that can not be nested inside elements of the same type (i.e. patternset but not path)

Parent(s)
  \DataType < \ProjectComponent
Author
  Andreas Aderhold
Author
  Hans Lellelid
Version
  $Revision: 526 $

### Properties

`boolean $checked= 'true'`
inherited

Are we sure we don't hold circular references?

Inherited from: \DataType::$checked

Subclasses are responsible for setting this value to false if we'd need to investigate this condition (usually because a child element has been added that is a subclass of DataType).

Default value `true` Details

Type
  boolean
Inherited_from
  \DataType::$checked

`$description= 'null'`
inherited

The descriptin the user has set.

Inherited from: \DataType::$description
Default value `null` Details

Type
Inherited_from
  \DataType::$description

`string $outfile= '""'`

Output file.

Default value`""`Details

Type
  string

`\Project $project= 'null'`
inherited

Holds a reference to the project that a project component (a task, a target, etc.) belongs to

A reference to the current project instanceInherited from: \ProjectComponent::$project
Default value `null` Details

Type
  \Project
Inherited_from
  \ProjectComponent::$project

`$ref= 'null'`
inherited

Value to the refid attribute. Type of Reference

Inherited from: \DataType::$ref
Default value `null` Details

Type
Inherited_from
  \DataType::$ref

`string $type= '""'`

Type of output to generate

Default value`""`Details

Type
  string

`bool $useFile= 'true'`

Output to file?

Default value `true` Details

Type
  bool

### Methods

`circularReference( ) : void`
inherited

Creates an exception that indicates the user has generated a loop of data types referencing each other.

Inherited from: \DataType::circularReference()
`dieOnCircularReference( $stk, $p ) : void`
inherited

Check to see whether any DataType we hold references to is included in the Stack (which holds all DataType instances that directly or indirectly reference this instance, including this instance itself).

Inherited from: \DataType::dieOnCircularReference()

If one is included, throw a BuildException created by circularReference

This implementation is appropriate only for a DataType that cannot hold other DataTypes as children.

The general contract of this method is that it shouldn't do anything if checked is true and set it to true on exit.

Parameters

Name | Type | Description
--- | --- | ---
$stk |  |
$p |  |

`getCheckedRef( $requiredClass, $dataTypeName ) : void`
inherited

Performs the check for circular references and returns the referenced object.

Inherited from: \DataType::getCheckedRef()
Parameters

Name | Type | Description
--- | --- | ---
$requiredClass |  |
$dataTypeName |  |

`getDescription( ) : void`
inherited

Return the description for the current data type.

Inherited from: \DataType::getDescription()
`getOutfile( ) : void`

`getProject( ) : \Project`
inherited

Returns a reference to current project

Inherited from: \ProjectComponent::getProject()
Returns

Type | Description
--- | ---
\Project | Reference to current porject object

`getType( ) : void`

`getUseFile( ) : void`

`isReference( ) : void`
inherited

Has the refid attribute of this element been set?

Inherited from: \DataType::isReference()
`log( $msg, integer $level = Project::MSG_INFO ) : void`
inherited

Logs a message with the given priority.

Inherited from: \ProjectComponent::log()

@param string $msg The message to be logged.

Parameters

Name | Type | Description
--- | --- | ---
$msg |  |
$level | integer | The message's priority at this message should have

`noChildrenAllowed( ) : void`
inherited

Creates an exception that indicates that this XML element must not have child elements if the refid attribute is set.

Inherited from: \DataType::noChildrenAllowed()
`parsingComplete( ) : void`

Validate config.

`setDescription( $desc ) : void`
inherited

Sets a description of the current data type. It will be useful in commenting what we are doing.

Inherited from: \DataType::setDescription()
Parameters

Name | Type | Description
--- | --- | ---
$desc |  |

`setOutfile( $outfile ) : void`

Parameters

Name | Type | Description
--- | --- | ---
$outfile |  |

`setProject( \Project $project ) : void`
inherited

References the project to the current component.

Inherited from: \ProjectComponent::setProject()
Parameters

Name | Type | Description
--- | --- | ---
$project | \Project | The reference to the current project

`setRefid( \Reference $r ) : void`
inherited

Set the value of the refid attribute.

Inherited from: \DataType::setRefid()

Subclasses may need to check whether any other attributes have been set as well or child elements have been created and thus override this method. if they do they must call parent::setRefid()

Parameters

Name | Type | Description
--- | --- | ---
$r | \Reference |

`setType( $type ) : void`

Parameters

Name | Type | Description
--- | --- | ---
$type |  |

`setUseFile( $useFile ) : void`

Parameters

Name | Type | Description
--- | --- | ---
$useFile |  |

`tooManyAttributes( ) : void`
inherited

Creates an exception that indicates that refid has to be the only attribute if it is set.

Inherited from: \DataType::tooManyAttributes()
Documentation was generated by DocBlox 0.15.1.