static function matchPage($page) { $cur = hq::URI(); if (hq::$testUri !== null) { $cur = hq::$testUri; } if ($page === '*' || $cur === $page) { return true; } if ($page === '') { return false; } $anyStart = false; //Начинаеться ли с * if ($page[0] === '*') { $anyStart = true; $page[0] = ' '; $page = trim($page); } //Заканчиваеться ли с * $anyEnd = true; if (substr($page, -1) === '*') { $anyStart = true; $page = substr($page, 0, -1); } $pos = strpos($cur, $page); if ($pos === false || !$anyStart && $pos !== 0) { return false; } if ($pos + strlen($page) !== strlen($cur) && !$anyEnd) { return false; } return true; }