@@ 408-419 (lines=12) @@ | ||
405 | // Wildcard Key |
|
406 | if (preg_match($this->wildcards, $key) && is_array($data) && ! empty($data)) { |
|
407 | // Shift the first item of the array |
|
408 | if (preg_match('/^:(index|item)\[\d+\]$/', $key)) { |
|
409 | for ($x = substr($key, 7, -1); $x >= 0; $x--) { |
|
410 | if (empty($data)) { |
|
411 | return false; |
|
412 | } |
|
413 | $item = array_shift($data); |
|
414 | } |
|
415 | } elseif ($key == ':last') { |
|
416 | $item = array_pop($data); |
|
417 | } else { |
|
418 | $item = array_shift($data); |
|
419 | } |
|
420 | $data =& $item; |
|
421 | } else { |
|
422 | if ( ! isset($data[$key]) || ! is_array($data[$key])) { |
|
@@ 466-477 (lines=12) @@ | ||
463 | // Wildcard Key |
|
464 | if (preg_match($this->wildcards, $key) && is_array($data) && ! empty($data)) { |
|
465 | // Shift the first item of the array |
|
466 | if (preg_match('/^:(index|item)\[\d+\]$/', $key)) { |
|
467 | for ($x = substr($key, 7, -1); $x >= 0; $x--) { |
|
468 | if (empty($data)) { |
|
469 | return false; |
|
470 | } |
|
471 | $item = array_shift($data); |
|
472 | } |
|
473 | } elseif ($key == ':last') { |
|
474 | $item = array_pop($data); |
|
475 | } else { |
|
476 | $item = array_shift($data); |
|
477 | } |
|
478 | $data =& $item; |
|
479 | } else { |
|
480 | if ( ! isset($data[$key])) { |