filters/XsltFilter.php
Applies XSL stylesheet to incoming text.
Uses PHP XSLT support (libxslt).
- Author
- Hans Lellelid
- Author
- Yannick Lecaillez
- Author
- Andreas Aderhold
- Package
- phing.filters
- See
- \FilterReader
- Version
- $Id: 057af49d450e4c137127acc0f5331368e7a76183 $
\XSLTParam
Class that holds an XSLT parameter.
Properties
Methods


getExpression(
)
:
string
Returns expression value -- performs lookup if expr is registerslot.
Type | Description |
---|---|
string |


getValue(
)
:
void
Gets expression value (alias to the getExpression()) method.
- See
- \getExpression()


setExpression(
string $expr
)
:
void
Sets expression value.
Name | Type | Description |
---|---|---|
$expr | string |


setListeningExpression(
\RegisterSlot $expr
)
:
void
Sets expression to dynamic register slot.
Name | Type | Description |
---|---|---|
$expr | \RegisterSlot |
\XsltFilter
Applies XSL stylesheet to incoming text.
Uses PHP XSLT support (libxslt).
- Parent(s)
- \BaseParamFilterReader < \BaseFilterReader < \FilterReader < \Reader
- See
- \FilterReader
- Author
- Hans Lellelid
- Author
- Yannick Lecaillez
- Author
- Andreas Aderhold
- Copyright
- � 2003 seasonfive. All rights reserved
- Version
- $Id: 057af49d450e4c137127acc0f5331368e7a76183 $
Properties


$_parameters= 'array()'
array()
Details- Type
- n/a
- Inherited_from
- \BaseParamFilterReader::$$_parameters


$html= 'false'
Whether to use loadHTML() to parse the input XML file.
false
Details- Type
- n/a


\Reader
$in= ''
- Type
- \Reader
- Inherited_from
- \FilterReader::$$in
- Inherited_from
- \BaseFilterReader::$$in
- Inherited_from
- \BaseParamFilterReader::$$in


$initialized= 'false'
Have the parameters passed been interpreted?
Inherited from: \BaseFilterReader::$$initialized\BaseParamFilterReader::$$initializedfalse
Details- Type
- n/a
- Inherited_from
- \BaseFilterReader::$$initialized
- Inherited_from
- \BaseParamFilterReader::$$initialized


boolean
$processed= 'false'
Whether XML file has been transformed.
false
Details- Type
- boolean


$project= 'null'
The Phing project this filter is part of.
Inherited from: \BaseFilterReader::$$project\BaseParamFilterReader::$$projectnull
Details- Type
- n/a
- Inherited_from
- \BaseFilterReader::$$project
- Inherited_from
- \BaseParamFilterReader::$$project


bool
$resolveDocumentExternals= 'false'
Whether to resolve entities in the XML document (see {@link http://www.php.net/manual/en/class.domdocument.php#domdocument.props.resolveexternals} for more details).
false
Details- Type
- bool
- Since
- 2.4


bool
$resolveStylesheetExternals= 'false'
Whether to resolve entities in the stylesheet.
false
Details- Type
- bool
- Since
- 2.4
Methods


__construct(
\Reader $in
=
null
)
:
void
Constructor used by Phing's introspection mechanism.
Inherited from: \BaseFilterReader::__construct()\BaseParamFilterReader::__construct()The original filter reader is only used for chaining purposes, never for filtering purposes (and indeed it would be useless for filtering purposes, as it has no real data to filter). ChainedReaderHelper uses this placeholder instance to create a chain of real filters.
Name | Type | Description |
---|---|---|
$in | \Reader |


chain(
\Reader $reader
)
:
\Reader
Creates a new XsltFilter using the passed in Reader for instantiation.


close(
)
:
void
Close stream.
Inherited from: \FilterReader::close()\BaseFilterReader::close()\BaseParamFilterReader::close()Exception | Description |
---|---|
\IOException | if there is an error closing stream |


createParam(
)
:
\XSLTParam
Create new XSLT Param object, to handle the nested element.
Type | Description |
---|---|
\XSLTParam |


eof(
)
:
boolean
Returns whether the end of file has been reached with input stream.
Inherited from: \BaseFilterReader::eof()\BaseParamFilterReader::eof()Type | Description |
---|---|
boolean |


getHtml(
)
:
boolean
Whether to use HTML parser for the XML.
This is supported in libxml2 -- Yay!
Type | Description |
---|---|
boolean |


getInitialized(
)
:
boolean
Returns the initialized status.
Inherited from: \BaseFilterReader::getInitialized()\BaseParamFilterReader::getInitialized()Type | Description |
---|---|
boolean | whether or not the filter is initialized |


getParams(
)
:
array
Returns the XSLT params set for this class.
This is used to "clone" this class, in the chain() method.
Type | Description |
---|---|
array |


getProject(
)
:
object
Returns the project this filter is part of.
Inherited from: \BaseFilterReader::getProject()\BaseParamFilterReader::getProject()Type | Description |
---|---|
object | The project this filter is part of |


getResource(
)
:
string
Returns the filename, url, etc. that is being read from.
Inherited from: \FilterReader::getResource()\BaseFilterReader::getResource()\BaseParamFilterReader::getResource()This is critical for, e.g., ExpatParser's ability to know the filename that is throwing an ExpatParserException, etc.
Type | Description |
---|---|
string |


getStyle(
)
:
mixed
Get the path to XSLT stylesheet.
Type | Description |
---|---|
mixed | XSLT stylesheet path. |


log(
string $msg, int $level
=
Project::MSG_INFO
)
:
void
Convenience method to support logging in filters.
Inherited from: \BaseFilterReader::log()\BaseParamFilterReader::log()Name | Type | Description |
---|---|---|
$msg | string | Message to log. |
$level | int | Priority level. |


mark(
)
:
void
If supported, places a "marker" (like a bookmark) at current stream position.
Inherited from: \Reader::mark()\FilterReader::mark()\BaseFilterReader::mark()\BaseParamFilterReader::mark()A subsequent call to reset() will move stream position back to last marker (if supported).


markSupported(
)
:
boolean
Whether marking is supported.
Inherited from: \Reader::markSupported()\FilterReader::markSupported()\BaseFilterReader::markSupported()\BaseParamFilterReader::markSupported()Type | Description |
---|---|
boolean |


process(
string $xml, string $xsl
)
:
void
Try to process the XSLT transformation
Name | Type | Description |
---|---|---|
$xml | string | XML to process. |
$xsl | string | XSLT sheet to use for the processing. |
Exception | Description |
---|---|
\BuildException | On XSLT errors |


read(
\off $len
=
null
)
:
string
Reads stream, applies XSLT and returns resulting stream.
FIXME: Clean up this function signature, as it a) params aren't being used and b) it doesn't make much sense.
Name | Type | Description |
---|---|---|
$len | \off | Offset at which to start storing characters. |
Type | Description |
---|---|
string | transformed buffer. |
Exception | Description |
---|---|
\BuildException | - if XSLT support missing, if error in xslt processing |


readLine(
)
:
\the
Reads a line of text ending with '\n' (or until the end of the stream).
Inherited from: \BaseFilterReader::readLine()\BaseParamFilterReader::readLine()The returned String retains the '\n'.
Type | Description |
---|---|
\the | line read, or <code>null</code> if the end of the stream has already been reached |
Exception | Description |
---|---|
\IOException | if the underlying reader throws one during reading |


ready(
)
:
boolean
Is stream ready for reading.
Inherited from: \Reader::ready()\FilterReader::ready()\BaseFilterReader::ready()\BaseParamFilterReader::ready()Type | Description |
---|---|
boolean |


reset(
)
:
void
Reset the current position in stream to beginning or last mark (if supported).
Inherited from: \FilterReader::reset()\BaseFilterReader::reset()\BaseParamFilterReader::reset()

setHtml(
boolean $b
)
:
void
Whether to use HTML parser for XML.
Name | Type | Description |
---|---|---|
$b | boolean |


setInitialized(
boolean $initialized
)
:
void
Sets the initialized status.
Inherited from: \BaseFilterReader::setInitialized()\BaseParamFilterReader::setInitialized()Name | Type | Description |
---|---|---|
$initialized | boolean | Whether or not the filter is initialized. |


setParameters(
$parameters
)
:
void
Name | Type | Description |
---|---|---|
$parameters |


setParams(
array $params
)
:
void
Sets the XSLT params for this class.
This is used to "clone" this class, in the chain() method.
Name | Type | Description |
---|---|---|
$params | array |


setProject(
object $project
)
:
void
Sets the project to work with.
Inherited from: \BaseFilterReader::setProject()\BaseParamFilterReader::setProject()Name | Type | Description |
---|---|---|
$project | object | The project this filter is part of. Should not be |


setReader(
$in
)
:
void
Name | Type | Description |
---|---|---|
$in |


setResolveDocumentExternals(
bool $resolveExternals
)
:
void
Whether to resolve entities in document.
Name | Type | Description |
---|---|---|
$resolveExternals | bool |
- Since
- 2.4


setResolveStylesheetExternals(
bool $resolveExternals
)
:
void
Whether to resolve entities in stylesheet.
Name | Type | Description |
---|---|---|
$resolveExternals | bool |
- Since
- 2.4


setStyle(
mixed $file
)
:
void
Set the XSLT stylesheet.
Name | Type | Description |
---|---|---|
$file | mixed | PhingFile object or path. |


skip(
int $n
)
:
void
Move stream position relative to current pos.
Inherited from: \FilterReader::skip()\BaseFilterReader::skip()\BaseParamFilterReader::skip()Name | Type | Description |
---|---|---|
$n | int |