public function parsePath($path)
    {
        $parts = explode('/', trim($path, '/'));

        $pathArray = [];
        if ($parts[0] == '.') {
            $pathArray = $this->currentPath;
            array_shift($parts);
        }

        foreach ($parts as $part) {
            if ($part == '..') {
                if (count($pathArray)) {
                    array_pop($pathArray);
                } else {
                    throw new Field\ConfigurationException("Invalid path. To many '..', can't move higher root.");
                }
            } else {
                $pathArray[] = $part;
            }
        }

        return $pathArray;
    }
public function parsePath($path)
    {
        $parts = explode('/', trim($path, '/'));

        $pathArray = [];
        if ($parts[0] == '.') {
            $pathArray = $this->currentPath;
            array_shift($parts);
        }

        foreach ($parts as $part) {
            if ($part == '..') {
                if (count($pathArray)) {
                    array_pop($pathArray);
                } else {
                    throw new Field\ConfigurationException("Invalid path. To many '..', can't move higher root.");
                }
            } else {
                $pathArray[] = $part;
            }
        }

        return $pathArray;
    }
public function parsePath ( $ path ) { $ parts = explode ( '/' , trim ( $ path , '/' ) ) ; $ pathArray = [ ] ; if ( $ parts [ 0 ] == '.' ) { $ pathArray = $ this -> currentPath ; array_shift ( $ parts ) ; } foreach ( $ parts as $ part ) { if ( $ part == '..' ) { if ( count ( $ pathArray ) ) { array_pop ( $ pathArray ) ; } else { throw new Field \ ConfigurationException ( "Invalid path. To many '..', can't move higher root." ) ; } } else { $ pathArray [ ] = $ part ; } } return $ pathArray ; }
Transform human path to internal DataSet format.

@see $currentPath
@param string $path Path in human format ('/a/b' or 'a/../b' or './b/c').
@return array Path in internal format.
@throws Field\ConfigurationException If path could not be parsed.
Transform human path to internal DataSet format .