ibexa

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

hash

Summary

Creates and returns a new associative array (a hash).

Usage

hash( key1, value1 [, key2, value2 [, ... ] ] )

Parameters

NameTypeDescriptionRequired
key1 string The key of value1. Yes.
value1 any The value associated with key1. Yes.
key2 string The key of value2. No.
value2 any The value associated with key2. No.

Returns

An associative array (a hash).

Description

This operator builds an associative array using the specified key/value pairs. Odd parameters are considered to be keys, even parameters will be values. The operator returns the generated hash.

Examples

Example 1

{hash( 1, 'Red Eyes', 2, 'Green Gremlins', 3, 'Blue Thunder' )}

The following hash will be returned:

Key

Value

1

Red Eyes

2

Green Gremlins

3

Blue Thunder

Balazs Halasy (05/02/2004 9:32 am)

Balazs Halasy (22/11/2005 10:36 am)


Comments

  • Adding elements to exiting hash

    Is it possible to add new elements (a new pair key/value) to an existing hash?
    • Re: Adding elements to exiting hash

      Yes, it is possible to add items to an existing hash (though the syntax is crabbed). The following example shows how items can be added:

      {def $items=hash('bar','boff')}
       
      {set $items=$items|merge(hash('foo','some text','ping','poot'))}
       
      foo = {$items['foo']}<br/>
      ping = {$items['ping']}<br/>
      bar = {$items['bar']}
      


      The example initialises a hash, and then adds two extra pairs to it using the merge operator.
      • Re: Re: Adding elements to exiting hash

        and, how to replace a value?

        {def $items = hash('aaa', 'A')}

        {$items.aaa='B'}

        it gives me error.
        • Re: Re: Re: Adding elements to exiting hash

          nor {set $items['aaa']='BBB'}