ibexa

Caution: This documentation is for eZ Publish legacy, from version 3.x to 5.x.

attribute

Summary

Makes it possible to inspect the contents of arrays, hashes and objects.

Usage

eZ Publish 4.5 and earlier releases:
input|attribute( [show_values [, level [, table ] ] ] )

eZ Publish 4.6 and later
input|attribute( [show_values [, level [, outputformat ] ] ] )

Parameters

NameTypeDescriptionRequired
show_values string Sets whether to extract values in addition to keys, names, etc. If "show" is passed, the values will be returned. Otherwise, the operator will not return any values. No.
level integer The number of levels that should be processed (default is 2). No.
table (pre 4.6)* boolean Return result as HTML table (default) or not. No.
outputformat (from 4.6)* string Specify output format. Default output format is 'html', but 'text' is also supported. Other custom output formats can be written. See in the Note 2 below. No.

Returns

A string revealing information about the target.

Description

This operator extracts all available keys, attribute names and/or methods that belong to the input parameter (must be either an object, an array or a hash). By default, the array keys, object attribute names and their types will be revealed. By passing "show" as the first parameter, the operator will also return the values. The second parameter can be used to control the number of levels/children that should be expanded and included in the result (the default setting is 2). A large level value may cause the system to be trapped in a recursive/infinite loop. The returned result is an HTML table containing the retrieved information. If "false()" is passed as the third parameter, the output will be a plain string instead of an HTML table. Please refer to the "Array and object inspection" section of the "Templates" chapter for more information about the use of this operator.

*Note 1: As of version 4.6 the parameter "outputformat" has become a string. The string specifies the output format. The default output format is 'html', but 'text' is also supported. Other custom output formats can be written. See in "Description" field below.

*Note 2: As of the 4.6 version of eZ Publish you can create your own output format handlers.

Examples

Example 1

{def $example=hash( 'Name',  'John Doe',
                    'Age',   24,
                    'Phone', '555-3212' )}
 
{$example|attribute()}

The following output will be produced:

Attribute

Type

Name

string

Age

integer

Phone

string

Example 2

{def $example=hash( 'Name',  'Jane Doe',
                    'Age',   23,
                    'Phone', '555-3213' )}
 
{$example|attribute( 'show' )}

The following output will be produced:

Attribute

Type

Value

Name

string

'Jane Doe'

Age

integer

23

Phone

string

'555-3213'

Example 3

{def $example=hash( 'Name',  'Jane Doe',
                    'Age',   25,
                    'Phone', '555-3213' )}
 
{$example|attribute( 'something' )}

The following output will be produced:

Attribute

Type

Name

string

Age

integer

Phone

string

Balazs Halasy (05/02/2004 10:50 am)

Geir Arne Waaler (23/11/2011 12:05 pm)


Comments

There are no comments.