Pimcore\Model\Asset\Dao::getById PHP Method

getById() public method

Get the data for the object by id from database and assign it to the object (model)
public getById ( $id )
$id
    public function getById($id)
    {
        $data = $this->db->fetchRow("SELECT assets.*, tree_locks.locked FROM assets\n            LEFT JOIN tree_locks ON assets.id = tree_locks.id AND tree_locks.type = 'asset'\n                WHERE assets.id = ?", $id);
        if ($data["id"] > 0) {
            $this->assignVariablesToModel($data);
            if ($data["hasMetaData"]) {
                $metadataRaw = $this->db->fetchAll("SELECT * FROM assets_metadata WHERE cid = ?", [$data["id"]]);
                $metadata = [];
                foreach ($metadataRaw as $md) {
                    unset($md["cid"]);
                    $metadata[] = $md;
                }
                $this->model->setMetadata($metadata);
            }
        } else {
            throw new \Exception("Asset with ID " . $id . " doesn't exists");
        }
    }