protected function getURIElements()
{
if (isset($this->uriElements)) {
return $this->uriElements;
} elseif (!isset($this->request)) {
return array();
}
$elements = array_slice(explode('/', $this->request->pathinfo), 1, $this->elementNumber);
// If one of the elements is empty, we do not match.
foreach ($elements as $element) {
if ($element === '') {
throw new LogicException('One of the URI elements was empty');
}
}
if (count($elements) !== $this->elementNumber) {
throw new LogicException('The number of provided elements to consider is different than the number of elements found in the URI');
}
return $this->uriElements = $elements;
}