Airship\Cabin\Hull\Blueprint\PublicFiles::getDirectoryId PHP Method

getDirectoryId() public method

Get a virtual directory ID
public getDirectoryId ( string $cabin, array $parts ) : integer
$cabin string
$parts array
return integer
    public function getDirectoryId(string $cabin, array $parts) : int
    {
        $directoryId = null;
        do {
            $part = \array_shift($parts);
            if (empty($directoryId)) {
                $directoryId = $this->db->cell('SELECT
                         directoryid
                     FROM
                         airship_dirs
                     WHERE
                            cabin = ?
                         AND parent IS NULL
                         AND name = ?
                     ', $cabin, $part);
            } else {
                $directoryId = $this->db->cell('SELECT
                         directoryid
                     FROM
                         airship_dirs
                     WHERE
                             parent = ?
                         AND name = ?
                     ', $directoryId, $part);
            }
            if (empty($directoryId)) {
                throw new FileNotFound();
            }
        } while (!empty($parts));
        return $directoryId;
    }