Collection.php 940 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace Gogs\Lib {
  3. class Collection implements ArrayIterator {
  4. private $objs = array();
  5. public function set($val, $key = null) {
  6. if ($key == null && is_array($val))
  7. $this->objs = $val;
  8. else if ($key != null)
  9. $this->objs[$key] = $val;
  10. else
  11. array_push($this->objs, $val);
  12. }
  13. public function by_key($idx) {
  14. return isset($this->objs[$idx]) ? $this->objs[$idx] : false;
  15. }
  16. public function all() {
  17. return $this->objs;
  18. }
  19. public function len() {
  20. return count($this->objs);
  21. }
  22. public function next() {
  23. return next($this->objs);
  24. }
  25. public function current() {
  26. return current($this->objs);
  27. }
  28. public function reset() {
  29. return reset($this->objs);
  30. }
  31. }
  32. }