Pimcore\Model\Document\Dao::getByPath PHP Method

getByPath() public method

Fetch a row by a path from the database and assign variables to the model.
public getByPath ( $path )
$path
    public function getByPath($path)
    {
        // check for root node
        $_path = $path != "/" ? dirname($path) : $path;
        $_path = str_replace("\\", "/", $_path);
        // windows patch
        $_key = basename($path);
        $_path .= $_path != "/" ? "/" : "";
        $data = $this->db->fetchRow("SELECT id FROM documents WHERE path = " . $this->db->quote($_path) . " and `key` = " . $this->db->quote($_key));
        if ($data["id"]) {
            $this->assignVariablesToModel($data);
        } else {
            // try to find a page with a pretty URL (use the original $path)
            $data = $this->db->fetchRow("SELECT id FROM documents_page WHERE prettyUrl = " . $this->db->quote($path));
            if ($data["id"]) {
                $this->assignVariablesToModel($data);
            } else {
                throw new \Exception("document with path {$path} doesn't exist");
            }
        }
    }