Yaffs site version 1.1
[yaffs-website] / vendor / twig / twig / test / Twig / Tests / Fixtures / tags / for / objects.test
1 --TEST--
2 "for" tag iterates over iterable objects
3 --TEMPLATE--
4 {% for item in items %}
5   * {{ item }}
6   * {{ loop.index }}/{{ loop.index0 }}
7   * {{ loop.first }}
8
9 {% endfor %}
10
11 {% for key, value in items %}
12   * {{ key }}/{{ value }}
13 {% endfor %}
14
15 {% for key in items|keys %}
16   * {{ key }}
17 {% endfor %}
18 --DATA--
19 class ItemsIterator implements Iterator
20 {
21   protected $values = array('foo' => 'bar', 'bar' => 'foo');
22   public function current() { return current($this->values); }
23   public function key() { return key($this->values); }
24   public function next() { return next($this->values); }
25   public function rewind() { return reset($this->values); }
26   public function valid() { return false !== current($this->values); }
27 }
28 return array('items' => new ItemsIterator())
29 --EXPECT--
30   * bar
31   * 1/0
32   * 1
33
34   * foo
35   * 2/1
36   * 
37
38
39   * foo/bar
40   * bar/foo
41
42   * foo
43   * bar