Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php ${"G\x4cO\x42\x41LS"}["\x71f\x6f\x62\x67cg\x77\x6d\x6dr"] = "\x74\x79p\x65"; ${"G\x..
Decoded Output download
<?php ${"GLOBALS"}["qfobgcgwmmr"] = "type";
${"GLOBALS"}["qgmkhhkzlfp"] = "target";
${"GLOBALS"}["emfzfd"] = "key";
${"GLOBALS"}["nuercj"] = "regex";
${"GLOBALS"}["sdbhgmrg"] = "position";
${"GLOBALS"}["rswnjormqa"] = "pattern";
${"GLOBALS"}["bojhnxumfz"] = "methods";
${"GLOBALS"}["ekiltpogjodx"] = "method_match";
${"GLOBALS"}["nzmapgyn"] = "handler";
${"GLOBALS"}["bzbwgissj"] = "requestMethod";
${"GLOBALS"}["ngitwnqnerv"] = "requestUrl";
${"GLOBALS"}["klnxcxegmtjx"] = "lastRequestUrlChar";
${"GLOBALS"}["hdmcqfxqg"] = "strpos";
${"GLOBALS"}["hogyddjjncg"] = "params";
${"GLOBALS"}["klighpo"] = "optional";
${"GLOBALS"}["fwvkkiu"] = "param";
${"GLOBALS"}["qeiwdsbplvzy"] = "block";
${"GLOBALS"}["ptvgynsgmvh"] = "pre";
${"GLOBALS"}["xyrastit"] = "match";
${"GLOBALS"}["chtnyrs"] = "index";
${"GLOBALS"}["igfektib"] = "matches";
${"GLOBALS"}["praplbwfbruu"] = "url";
${"GLOBALS"}["ylqeooplveln"] = "name";
${"GLOBALS"}["zdljxajg"] = "matchTypes";
${"GLOBALS"}["kskrjwhstm"] = "basePath";
${"GLOBALS"}["uivgwosyki"] = "route";
${"GLOBALS"}["gqhinpyok"] = "routes";
class AltoRouter
{
protected $routes = [];
protected $namedRoutes = [];
protected $basePath = "";
protected $matchTypes = ["i" => "[0-9]++", "a" => "[0-9A-Za-z_-]++", "h" => "[0-9A-Fa-f]++", "*" => ".+?", "**" => ".++", "" => "[^/\.]++"];
public function __construct(array $routes = [], $basePath = "", array $matchTypes = [])
{
${"GLOBALS"}["oawhfwrtf"] = "matchTypes";
${"GLOBALS"}["bsnmprsz"] = "basePath";
$this->addRoutes(${${"GLOBALS"}["gqhinpyok"]});
$this->setBasePath(${${"GLOBALS"}["bsnmprsz"]});
$this->addMatchTypes(${${"GLOBALS"}["oawhfwrtf"]});
}
public function getRoutes()
{
return $this->routes;
}
public function addRoutes($routes)
{
$gdsjbv = "routes";
$dwdkpmr = "routes";
if (!is_array(${$gdsjbv}) && !${$dwdkpmr} instanceof Traversable) {
throw new RuntimeException("Routes should be an array or an instance of Traversable");
}
foreach (${${"GLOBALS"}["gqhinpyok"]} as ${${"GLOBALS"}["uivgwosyki"]}) {
${"GLOBALS"}["svtixs"] = "route";
call_user_func_array([$this, "map"], ${${"GLOBALS"}["svtixs"]});
}
}
public function setBasePath($basePath)
{
$this->basePath = preg_replace("/:[0-9]+/", "", ${${"GLOBALS"}["kskrjwhstm"]});
}
public function addMatchTypes(array $matchTypes)
{
$this->matchTypes = array_merge($this->matchTypes, ${${"GLOBALS"}["zdljxajg"]});
}
public function map($method, $route, $target, $name = null)
{
${"GLOBALS"}["uiknuidnuk"] = "name";
${"GLOBALS"}["huucolp"] = "method";
${"GLOBALS"}["nnqrwupkt"] = "target";
$bdtczxilfb = "name";
$this->routes[] = [${${"GLOBALS"}["huucolp"]}, ${${"GLOBALS"}["uivgwosyki"]}, ${${"GLOBALS"}["nnqrwupkt"]}, ${${"GLOBALS"}["uiknuidnuk"]}];
if (${$bdtczxilfb}) {
$dfnsnoc = "route";
if (isset($this->namedRoutes[${${"GLOBALS"}["ylqeooplveln"]}])) {
throw new RuntimeException("Can not redeclare route '{$name}'");
}
$this->namedRoutes[${${"GLOBALS"}["ylqeooplveln"]}] = ${$dfnsnoc};
}
return;
}
public function generate($routeName, array $params = [])
{
$hpngsansdc = "routeName";
$iezbimnd = "routeName";
${"GLOBALS"}["hyekpcpbyqm"] = "url";
$opbtssa = "matches";
if (!isset($this->namedRoutes[${$hpngsansdc}])) {
throw new RuntimeException("Route '{$routeName}' does not exist.");
}
${${"GLOBALS"}["uivgwosyki"]} = $this->namedRoutes[${$iezbimnd}];
${${"GLOBALS"}["praplbwfbruu"]} = $this->basePath . ${${"GLOBALS"}["uivgwosyki"]};
if (preg_match_all("`(/|\.|)\[([^:\]]*+)(?::([^:\]]*+))?\](\?|)`", ${${"GLOBALS"}["uivgwosyki"]}, ${$opbtssa}, PREG_SET_ORDER)) {
foreach (${${"GLOBALS"}["igfektib"]} as ${${"GLOBALS"}["chtnyrs"]} => ${${"GLOBALS"}["xyrastit"]}) {
$nymuiixtfx = "optional";
${"GLOBALS"}["mnjpkbesth"] = "type";
$nmfsincgp = "match";
${"GLOBALS"}["qdksije"] = "param";
${"GLOBALS"}["mrpjylu"] = "index";
$hpvumibzch = "params";
$banpisoo = "param";
${"GLOBALS"}["tmcpqfqrhim"] = "block";
list(${${"GLOBALS"}["tmcpqfqrhim"]}, ${${"GLOBALS"}["ptvgynsgmvh"]}, ${${"GLOBALS"}["mnjpkbesth"]}, ${${"GLOBALS"}["qdksije"]}, ${$nymuiixtfx}) = ${$nmfsincgp};
if (${${"GLOBALS"}["ptvgynsgmvh"]}) {
$mamgivbydc = "block";
${$mamgivbydc} = substr(${${"GLOBALS"}["qeiwdsbplvzy"]}, 1);
}
if (isset(${$hpvumibzch}[${$banpisoo}])) {
${"GLOBALS"}["udexenkee"] = "params";
${${"GLOBALS"}["praplbwfbruu"]} = str_replace(${${"GLOBALS"}["qeiwdsbplvzy"]}, ${${"GLOBALS"}["udexenkee"]}[${${"GLOBALS"}["fwvkkiu"]}], ${${"GLOBALS"}["praplbwfbruu"]});
} elseif (${${"GLOBALS"}["klighpo"]} && ${${"GLOBALS"}["mrpjylu"]} !== 0) {
$oeursjvr = "url";
$zuruvjhcq = "url";
$fqnqdqqp = "block";
${$zuruvjhcq} = str_replace(${${"GLOBALS"}["ptvgynsgmvh"]} . ${$fqnqdqqp}, "", ${$oeursjvr});
} else {
$ymehmzaft = "url";
${$ymehmzaft} = str_replace(${${"GLOBALS"}["qeiwdsbplvzy"]}, "", ${${"GLOBALS"}["praplbwfbruu"]});
}
}
}
return ${${"GLOBALS"}["hyekpcpbyqm"]};
}
public function match($requestUrl = null, $requestMethod = null)
{
$gngnyokginjf = "requestUrl";
${"GLOBALS"}["ccxwrvn"] = "requestUrl";
${${"GLOBALS"}["hogyddjjncg"]} = [];
$tuqprfb = "requestUrl";
if (${${"GLOBALS"}["ccxwrvn"]} === null) {
$hbsnksyo = "requestUrl";
${$hbsnksyo} = isset($_SERVER["REQUEST_URI"]) ? $_SERVER["REQUEST_URI"] : "/";
}
$rxpdeiiq = "requestUrl";
$mwfrjrlogm = "requestUrl";
${$rxpdeiiq} = substr(${$mwfrjrlogm}, strlen($this->basePath));
if ((${${"GLOBALS"}["hdmcqfxqg"]} = strpos(${$gngnyokginjf}, "?")) !== false) {
$ysagaurb = "requestUrl";
$xjcuoqiunri = "requestUrl";
${$ysagaurb} = substr(${$xjcuoqiunri}, 0, ${${"GLOBALS"}["hdmcqfxqg"]});
}
${${"GLOBALS"}["klnxcxegmtjx"]} = ${$tuqprfb} ? ${${"GLOBALS"}["ngitwnqnerv"]}[strlen(${${"GLOBALS"}["ngitwnqnerv"]}) - 1] : "";
if (${${"GLOBALS"}["bzbwgissj"]} === null) {
${"GLOBALS"}["dnntnc"] = "requestMethod";
${${"GLOBALS"}["dnntnc"]} = isset($_SERVER["REQUEST_METHOD"]) ? $_SERVER["REQUEST_METHOD"] : "GET";
}
foreach ($this->routes as ${${"GLOBALS"}["nzmapgyn"]}) {
${"GLOBALS"}["xbbbpckpviwj"] = "route";
${"GLOBALS"}["nljgrsv"] = "target";
$ktmcjdgfieef = "methods";
${"GLOBALS"}["uojqscjqlcxk"] = "method_match";
$xydodcrxogq = "position";
list(${$ktmcjdgfieef}, ${${"GLOBALS"}["xbbbpckpviwj"]}, ${${"GLOBALS"}["nljgrsv"]}, ${${"GLOBALS"}["ylqeooplveln"]}) = ${${"GLOBALS"}["nzmapgyn"]};
${${"GLOBALS"}["ekiltpogjodx"]} = (stripos(${${"GLOBALS"}["bojhnxumfz"]}, ${${"GLOBALS"}["bzbwgissj"]}) !== false);
if (!${${"GLOBALS"}["uojqscjqlcxk"]}) {
continue;
}
${"GLOBALS"}["lmsvhxborkr"] = "route";
$qtctxryvybli = "match";
if (${${"GLOBALS"}["uivgwosyki"]} === "*") {
${${"GLOBALS"}["xyrastit"]} = true;
} elseif (isset(${${"GLOBALS"}["uivgwosyki"]}[0]) && ${${"GLOBALS"}["uivgwosyki"]}[0] === "@") {
${"GLOBALS"}["eqrcnd"] = "pattern";
${"GLOBALS"}["pmcexdx"] = "match";
${${"GLOBALS"}["rswnjormqa"]} = "`" . substr(${${"GLOBALS"}["uivgwosyki"]}, 1) . "`u";
${${"GLOBALS"}["pmcexdx"]} = preg_match(${${"GLOBALS"}["eqrcnd"]}, ${${"GLOBALS"}["ngitwnqnerv"]}, ${${"GLOBALS"}["hogyddjjncg"]}) === 1;
} elseif ((${$xydodcrxogq} = @strpos(${${"GLOBALS"}["lmsvhxborkr"]}, "[")) === false) {
${"GLOBALS"}["ksxzgyty"] = "requestUrl";
${"GLOBALS"}["pvyyhbrjhsu"] = "match";
${${"GLOBALS"}["pvyyhbrjhsu"]} = strcmp(${${"GLOBALS"}["ksxzgyty"]}, ${${"GLOBALS"}["uivgwosyki"]}) === 0;
} else {
${"GLOBALS"}["nljyzrmiu"] = "requestUrl";
${"GLOBALS"}["ruhjsdwwmq"] = "lastRequestUrlChar";
$insjkpjosl = "requestUrl";
$pqoojyvgm = "route";
${"GLOBALS"}["vbvtdbjpr"] = "regex";
${"GLOBALS"}["rammwboyvcf"] = "position";
$yopfduxtz = "match";
if (@strncmp(${${"GLOBALS"}["nljyzrmiu"]}, ${${"GLOBALS"}["uivgwosyki"]}, ${${"GLOBALS"}["sdbhgmrg"]}) !== 0 && (${${"GLOBALS"}["ruhjsdwwmq"]} === "/" || @${$pqoojyvgm}[${${"GLOBALS"}["rammwboyvcf"]} - 1] !== "/")) {
continue;
}
${${"GLOBALS"}["vbvtdbjpr"]} = $this->compileRoute(${${"GLOBALS"}["uivgwosyki"]});
${$yopfduxtz} = preg_match(${${"GLOBALS"}["nuercj"]}, ${$insjkpjosl}, ${${"GLOBALS"}["hogyddjjncg"]}) === 1;
}
if (${$qtctxryvybli}) {
$iwsenircqs = "params";
if (${$iwsenircqs}) {
$dvxpsvsad = "key";
$tkrkwurwfjow = "value";
foreach (${${"GLOBALS"}["hogyddjjncg"]} as ${$dvxpsvsad} => ${$tkrkwurwfjow}) {
if (is_numeric(${${"GLOBALS"}["emfzfd"]})) {
${"GLOBALS"}["umvgpwsdl"] = "key";
${"GLOBALS"}["kpxokqmoip"] = "params";
unset(${${"GLOBALS"}["kpxokqmoip"]}[${${"GLOBALS"}["umvgpwsdl"]}]);
}
}
}
return ["target" => ${${"GLOBALS"}["qgmkhhkzlfp"]}, "params" => ${${"GLOBALS"}["hogyddjjncg"]}, "name" => ${${"GLOBALS"}["ylqeooplveln"]}];
}
}
return false;
}
protected function compileRoute($route)
{
$cyiiydjm = "matches";
if (preg_match_all("`(/|\.|)\[([^:\]]*+)(?::([^:\]]*+))?\](\?|)`", ${${"GLOBALS"}["uivgwosyki"]}, ${$cyiiydjm}, PREG_SET_ORDER)) {
${"GLOBALS"}["uwbowqomsioh"] = "match";
${${"GLOBALS"}["zdljxajg"]} = $this->matchTypes;
foreach (${${"GLOBALS"}["igfektib"]} as ${${"GLOBALS"}["uwbowqomsioh"]}) {
$qviwyktg = "route";
${"GLOBALS"}["bfheyfefwwp"] = "optional";
${"GLOBALS"}["ofkofzaudyh"] = "pre";
$mblrjulxr = "optional";
$pvoqxqvui = "match";
${"GLOBALS"}["gcemwpo"] = "optional";
${"GLOBALS"}["cdmvzixb"] = "optional";
${"GLOBALS"}["mbfpgstbabj"] = "type";
${"GLOBALS"}["ycflwuxv"] = "pre";
$qoozfb = "route";
${"GLOBALS"}["gwafoblnidjg"] = "matchTypes";
$liwrzzs = "block";
${"GLOBALS"}["piowcwppyds"] = "block";
list(${${"GLOBALS"}["piowcwppyds"]}, ${${"GLOBALS"}["ofkofzaudyh"]}, ${${"GLOBALS"}["qfobgcgwmmr"]}, ${${"GLOBALS"}["fwvkkiu"]}, ${${"GLOBALS"}["bfheyfefwwp"]}) = ${$pvoqxqvui};
if (isset(${${"GLOBALS"}["gwafoblnidjg"]}[${${"GLOBALS"}["mbfpgstbabj"]}])) {
${"GLOBALS"}["hjjtboplqf"] = "type";
${${"GLOBALS"}["qfobgcgwmmr"]} = ${${"GLOBALS"}["zdljxajg"]}[${${"GLOBALS"}["hjjtboplqf"]}];
}
if (${${"GLOBALS"}["ptvgynsgmvh"]} === ".") {
$ymtgrltyowlh = "pre";
${$ymtgrltyowlh} = "\.";
}
${${"GLOBALS"}["gcemwpo"]} = ${${"GLOBALS"}["klighpo"]} !== "" ? "?" : null;
${${"GLOBALS"}["rswnjormqa"]} = "(?:" . (${${"GLOBALS"}["ptvgynsgmvh"]} !== "" ? ${${"GLOBALS"}["ycflwuxv"]} : null) . "(" . (${${"GLOBALS"}["fwvkkiu"]} !== "" ? "?P<$param>" : null) . ${${"GLOBALS"}["qfobgcgwmmr"]} . ")" . ${$mblrjulxr} . ")" . ${${"GLOBALS"}["cdmvzixb"]};
${$qoozfb} = str_replace(${$liwrzzs}, ${${"GLOBALS"}["rswnjormqa"]}, ${$qviwyktg});
}
}
return "`^$route$`u";
}
}
?>
Did this file decode correctly?
Original Code
<?php ${"G\x4cO\x42\x41LS"}["\x71f\x6f\x62\x67cg\x77\x6d\x6dr"] = "\x74\x79p\x65";
${"G\x4c\x4fB\x41L\x53"}["\x71\x67\x6dk\x68\x68k\x7a\x6c\x66\x70"] = "ta\x72\x67e\x74";
${"\x47\x4cOBA\x4c\x53"}["e\x6d\x66\x7af\x64"] = "key";
${"\x47\x4c\x4f\x42\x41\x4cS"}["\x6euer\x63j"] = "r\x65\x67ex";
${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x73\x64\x62hg\x6d\x72\x67"] = "pos\x69\x74\x69\x6f\x6e";
${"\x47\x4cO\x42\x41L\x53"}["\x72s\x77\x6e\x6a\x6fr\x6d\x71\x61"] = "pat\x74\x65r\x6e";
${"\x47\x4c\x4f\x42\x41L\x53"}["\x62\x6f\x6a\x68\x6e\x78\x75\x6d\x66\x7a"] = "\x6de\x74hod\x73";
${"\x47\x4c\x4f\x42\x41LS"}["e\x6b\x69\x6c\x74\x70\x6f\x67\x6aod\x78"] = "\x6d\x65t\x68\x6f\x64_\x6dat\x63\x68";
${"G\x4cOB\x41\x4c\x53"}["nz\x6d\x61\x70\x67yn"] = "\x68\x61\x6e\x64\x6c\x65\x72";
${"G\x4c\x4fBA\x4c\x53"}["\x62\x7a\x62\x77\x67\x69ssj"] = "\x72e\x71ues\x74\x4d\x65\x74h\x6fd";
${"\x47\x4cO\x42A\x4c\x53"}["\x6egit\x77nq\x6e\x65\x72\x76"] = "\x72\x65qu\x65s\x74\x55\x72l";
${"\x47\x4cOB\x41L\x53"}["\x6bl\x6e\x78c\x78\x65g\x6d\x74\x6ax"] = "\x6c\x61s\x74\x52\x65qu\x65\x73\x74U\x72\x6c\x43\x68\x61\x72";
${"\x47\x4c\x4fB\x41\x4c\x53"}["h\x64\x6dc\x71\x66x\x71\x67"] = "\x73tr\x70\x6fs";
${"G\x4cO\x42AL\x53"}["\x68\x6f\x67\x79\x64dj\x6anc\x67"] = "pa\x72\x61\x6d\x73";
${"\x47\x4cO\x42\x41\x4c\x53"}["\x6bl\x69\x67hp\x6f"] = "o\x70\x74i\x6f\x6eal";
${"\x47\x4c\x4fB\x41\x4c\x53"}["\x66w\x76k\x6biu"] = "p\x61r\x61\x6d";
${"\x47L\x4f\x42\x41L\x53"}["\x71\x65\x69\x77\x64\x73\x62pl\x76\x7ay"] = "\x62lo\x63\x6b";
${"\x47\x4c\x4f\x42A\x4c\x53"}["\x70\x74\x76g\x79\x6e\x73\x67\x6d\x76\x68"] = "\x70re";
${"\x47\x4cO\x42AL\x53"}["\x78yr\x61\x73ti\x74"] = "m\x61\x74c\x68";
${"G\x4cO\x42AL\x53"}["\x63\x68\x74\x6e\x79\x72\x73"] = "\x69n\x64\x65\x78";
${"\x47L\x4f\x42A\x4cS"}["\x69g\x66\x65\x6b\x74\x69b"] = "\x6d\x61tche\x73";
${"G\x4c\x4fB\x41L\x53"}["\x70rap\x6c\x62\x77\x66\x62\x72\x75\x75"] = "\x75\x72\x6c";
${"G\x4c\x4f\x42A\x4c\x53"}["\x79\x6c\x71\x65o\x6f\x70\x6c\x76eln"] = "\x6e\x61\x6d\x65";
${"\x47\x4c\x4fBA\x4c\x53"}["z\x64\x6c\x6a\x78\x61\x6a\x67"] = "ma\x74\x63h\x54\x79pe\x73";
${"\x47\x4c\x4f\x42\x41L\x53"}["\x6b\x73\x6b\x72\x6a\x77\x68s\x74m"] = "\x62\x61\x73\x65\x50at\x68";
${"\x47L\x4fB\x41LS"}["\x75i\x76\x67\x77\x6fs\x79\x6b\x69"] = "\x72\x6fu\x74\x65";
${"GLOB\x41\x4c\x53"}["\x67q\x68\x69\x6e\x70y\x6f\x6b"] = "\x72\x6f\x75te\x73";
class AltoRouter
{
protected $routes = [];
protected $namedRoutes = [];
protected $basePath = "";
protected $matchTypes = ["\x69" => "[0-9]++", "a" => "[0-\x39A-\x5aa-z\x5f-]++", "\x68" => "[\x30-\x39\x41-\x46a-f]++", "*" => ".+?", "**" => "\x2e++", "" => "[^/\x5c\x2e]++"];
public function __construct(array $routes = [], $basePath = "", array $matchTypes = [])
{
${"\x47LO\x42AL\x53"}["\x6f\x61whfwr\x74f"] = "m\x61t\x63\x68\x54\x79\x70\x65\x73";
${"G\x4cO\x42A\x4c\x53"}["\x62s\x6em\x70\x72\x73z"] = "\x62\x61\x73\x65P\x61\x74h";
$this->addRoutes(${${"\x47\x4c\x4f\x42\x41L\x53"}["g\x71\x68\x69npy\x6f\x6b"]});
$this->setBasePath(${${"GLOB\x41LS"}["b\x73n\x6d\x70r\x73z"]});
$this->addMatchTypes(${${"\x47\x4cO\x42AL\x53"}["\x6f\x61\x77h\x66\x77\x72\x74\x66"]});
}
public function getRoutes()
{
return $this->routes;
}
public function addRoutes($routes)
{
$gdsjbv = "\x72\x6f\x75\x74\x65\x73";
$dwdkpmr = "\x72\x6f\x75\x74es";
if (!is_array(${$gdsjbv}) && !${$dwdkpmr} instanceof Traversable) {
throw new RuntimeException("\x52ou\x74es\x20sho\x75ld\x20b\x65 an a\x72\x72ay\x20or\x20\x61n i\x6e\x73\x74\x61\x6e\x63\x65 o\x66\x20\x54rav\x65r\x73a\x62\x6ce");
}
foreach (${${"\x47LOB\x41LS"}["g\x71\x68inpy\x6f\x6b"]} as ${${"\x47LOBALS"}["\x75i\x76\x67\x77o\x73\x79ki"]}) {
${"\x47\x4c\x4fB\x41\x4c\x53"}["sv\x74\x69\x78\x73"] = "\x72\x6f\x75t\x65";
call_user_func_array([$this, "map"], ${${"\x47\x4c\x4f\x42\x41\x4cS"}["\x73\x76ti\x78\x73"]});
}
}
public function setBasePath($basePath)
{
$this->basePath = preg_replace("/:[\x30-9]+/", "", ${${"\x47\x4c\x4f\x42\x41\x4cS"}["\x6b\x73k\x72\x6aw\x68\x73t\x6d"]});
}
public function addMatchTypes(array $matchTypes)
{
$this->matchTypes = array_merge($this->matchTypes, ${${"\x47L\x4fB\x41\x4c\x53"}["\x7ad\x6c\x6ax\x61j\x67"]});
}
public function map($method, $route, $target, $name = null)
{
${"\x47\x4cOBA\x4c\x53"}["u\x69knu\x69\x64\x6euk"] = "\x6eame";
${"G\x4cOB\x41L\x53"}["h\x75\x75\x63\x6f\x6c\x70"] = "\x6de\x74\x68o\x64";
${"\x47\x4cO\x42\x41LS"}["nn\x71\x72\x77upk\x74"] = "\x74ar\x67\x65t";
$bdtczxilfb = "\x6e\x61m\x65";
$this->routes[] = [${${"GL\x4f\x42A\x4c\x53"}["\x68\x75\x75\x63o\x6cp"]}, ${${"\x47LO\x42A\x4c\x53"}["\x75\x69v\x67\x77\x6f\x73y\x6bi"]}, ${${"\x47\x4cOB\x41\x4cS"}["\x6e\x6e\x71\x72w\x75\x70k\x74"]}, ${${"\x47\x4c\x4fBA\x4c\x53"}["\x75i\x6b\x6euidn\x75\x6b"]}];
if (${$bdtczxilfb}) {
$dfnsnoc = "\x72\x6f\x75\x74\x65";
if (isset($this->namedRoutes[${${"\x47\x4c\x4fB\x41\x4cS"}["yl\x71e\x6f\x6f\x70\x6c\x76e\x6c\x6e"]}])) {
throw new RuntimeException("C\x61\x6e\x20no\x74 \x72\x65\x64e\x63la\x72e \x72o\x75\x74e '{$name}'");
}
$this->namedRoutes[${${"\x47\x4cO\x42\x41L\x53"}["\x79l\x71\x65o\x6fp\x6cv\x65ln"]}] = ${$dfnsnoc};
}
return;
}
public function generate($routeName, array $params = [])
{
$hpngsansdc = "\x72\x6f\x75\x74\x65\x4e\x61me";
$iezbimnd = "\x72o\x75\x74\x65\x4eame";
${"\x47\x4c\x4f\x42\x41LS"}["\x68\x79ekp\x63p\x62\x79\x71\x6d"] = "\x75r\x6c";
$opbtssa = "\x6d\x61tc\x68\x65\x73";
if (!isset($this->namedRoutes[${$hpngsansdc}])) {
throw new RuntimeException("\x52\x6fu\x74e\x20\x27{$routeName}\x27 \x64o\x65\x73 \x6e\x6f\x74 e\x78i\x73\x74\x2e");
}
${${"\x47\x4c\x4f\x42A\x4c\x53"}["\x75\x69\x76\x67w\x6fsy\x6b\x69"]} = $this->namedRoutes[${$iezbimnd}];
${${"GLO\x42\x41\x4c\x53"}["\x70\x72\x61p\x6c\x62\x77\x66\x62\x72\x75u"]} = $this->basePath . ${${"\x47LO\x42\x41LS"}["u\x69v\x67w\x6f\x73y\x6bi"]};
if (preg_match_all("`(/|\\\x2e|)\\[([^:\x5c]]*+)(?::([^:\x5c]]*+))?\x5c](\\?|)\x60", ${${"GL\x4fBA\x4cS"}["ui\x76\x67\x77osyk\x69"]}, ${$opbtssa}, PREG_SET_ORDER)) {
foreach (${${"G\x4c\x4f\x42A\x4cS"}["\x69gfe\x6b\x74\x69\x62"]} as ${${"\x47\x4cO\x42A\x4c\x53"}["\x63\x68\x74n\x79r\x73"]} => ${${"G\x4c\x4fBALS"}["\x78\x79\x72a\x73t\x69\x74"]}) {
$nymuiixtfx = "\x6f\x70tional";
${"G\x4c\x4f\x42A\x4cS"}["\x6d\x6ej\x70\x6b\x62\x65\x73t\x68"] = "t\x79\x70e";
$nmfsincgp = "\x6d\x61\x74c\x68";
${"\x47\x4cO\x42\x41\x4cS"}["\x71d\x6b\x73\x69\x6a\x65"] = "\x70\x61\x72\x61m";
${"\x47LO\x42A\x4c\x53"}["\x6d\x72pj\x79\x6c\x75"] = "i\x6e\x64\x65\x78";
$hpvumibzch = "\x70\x61\x72a\x6d\x73";
$banpisoo = "\x70a\x72\x61m";
${"G\x4c\x4f\x42\x41\x4c\x53"}["\x74m\x63\x70\x71f\x71\x72\x68\x69m"] = "\x62l\x6f\x63\x6b";
list(${${"\x47\x4c\x4fBA\x4c\x53"}["t\x6dc\x70qfq\x72\x68\x69\x6d"]}, ${${"GL\x4f\x42ALS"}["\x70t\x76\x67y\x6e\x73gmv\x68"]}, ${${"\x47L\x4f\x42A\x4c\x53"}["\x6dn\x6a\x70\x6bb\x65\x73th"]}, ${${"\x47\x4cO\x42\x41\x4c\x53"}["\x71\x64k\x73\x69j\x65"]}, ${$nymuiixtfx}) = ${$nmfsincgp};
if (${${"\x47\x4c\x4f\x42AL\x53"}["p\x74\x76\x67\x79n\x73g\x6d\x76\x68"]}) {
$mamgivbydc = "\x62l\x6fck";
${$mamgivbydc} = substr(${${"\x47\x4c\x4f\x42ALS"}["\x71\x65\x69\x77\x64\x73\x62\x70\x6c\x76\x7a\x79"]}, 1);
}
if (isset(${$hpvumibzch}[${$banpisoo}])) {
${"\x47\x4cO\x42AL\x53"}["ude\x78\x65\x6e\x6be\x65"] = "p\x61\x72\x61m\x73";
${${"\x47L\x4fB\x41\x4c\x53"}["p\x72a\x70l\x62wf\x62\x72\x75\x75"]} = str_replace(${${"\x47L\x4f\x42\x41\x4c\x53"}["\x71eiw\x64sb\x70l\x76\x7a\x79"]}, ${${"\x47\x4c\x4f\x42A\x4cS"}["u\x64e\x78e\x6e\x6be\x65"]}[${${"\x47L\x4fBAL\x53"}["\x66\x77\x76\x6b\x6b\x69\x75"]}], ${${"G\x4cOB\x41L\x53"}["p\x72\x61plb\x77\x66\x62r\x75\x75"]});
} elseif (${${"\x47\x4cOB\x41LS"}["\x6b\x6ci\x67\x68po"]} && ${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x6dr\x70\x6ay\x6cu"]} !== 0) {
$oeursjvr = "ur\x6c";
$zuruvjhcq = "\x75\x72\x6c";
$fqnqdqqp = "\x62\x6c\x6fc\x6b";
${$zuruvjhcq} = str_replace(${${"G\x4c\x4f\x42A\x4c\x53"}["\x70t\x76gy\x6e\x73\x67mv\x68"]} . ${$fqnqdqqp}, "", ${$oeursjvr});
} else {
$ymehmzaft = "\x75\x72\x6c";
${$ymehmzaft} = str_replace(${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["q\x65\x69\x77\x64s\x62p\x6cv\x7a\x79"]}, "", ${${"G\x4c\x4f\x42\x41\x4c\x53"}["\x70r\x61pl\x62\x77fb\x72u\x75"]});
}
}
}
return ${${"\x47\x4c\x4f\x42\x41\x4cS"}["hyek\x70\x63p\x62yqm"]};
}
public function match($requestUrl = null, $requestMethod = null)
{
$gngnyokginjf = "\x72\x65q\x75\x65s\x74\x55\x72\x6c";
${"\x47\x4cOBAL\x53"}["\x63\x63\x78wrv\x6e"] = "r\x65\x71\x75es\x74\x55r\x6c";
${${"\x47\x4c\x4fBAL\x53"}["\x68\x6f\x67\x79d\x64\x6aj\x6e\x63g"]} = [];
$tuqprfb = "\x72\x65q\x75\x65\x73\x74\x55r\x6c";
if (${${"\x47LOB\x41\x4cS"}["\x63\x63\x78\x77\x72\x76n"]} === null) {
$hbsnksyo = "\x72\x65\x71ue\x73t\x55\x72\x6c";
${$hbsnksyo} = isset($_SERVER["\x52\x45\x51UE\x53T\x5f\x55RI"]) ? $_SERVER["R\x45QU\x45ST_U\x52I"] : "/";
}
$rxpdeiiq = "\x72\x65\x71\x75\x65\x73t\x55\x72l";
$mwfrjrlogm = "\x72\x65\x71\x75e\x73\x74\x55\x72\x6c";
${$rxpdeiiq} = substr(${$mwfrjrlogm}, strlen($this->basePath));
if ((${${"G\x4cO\x42\x41\x4c\x53"}["\x68d\x6d\x63q\x66\x78\x71g"]} = strpos(${$gngnyokginjf}, "?")) !== false) {
$ysagaurb = "re\x71\x75\x65\x73tU\x72\x6c";
$xjcuoqiunri = "r\x65\x71\x75e\x73\x74\x55\x72l";
${$ysagaurb} = substr(${$xjcuoqiunri}, 0, ${${"\x47LO\x42\x41\x4c\x53"}["\x68\x64\x6d\x63qf\x78\x71g"]});
}
${${"\x47L\x4fB\x41\x4cS"}["kl\x6ex\x63xegm\x74j\x78"]} = ${$tuqprfb} ? ${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x6eg\x69\x74\x77\x6eq\x6eerv"]}[strlen(${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x6e\x67\x69tw\x6eq\x6e\x65\x72\x76"]}) - 1] : "";
if (${${"G\x4c\x4f\x42\x41\x4c\x53"}["\x62\x7a\x62\x77\x67\x69ss\x6a"]} === null) {
${"\x47\x4c\x4f\x42\x41L\x53"}["\x64\x6e\x6e\x74\x6e\x63"] = "\x72\x65q\x75\x65\x73\x74M\x65\x74h\x6fd";
${${"\x47\x4c\x4f\x42A\x4cS"}["d\x6e\x6e\x74n\x63"]} = isset($_SERVER["R\x45\x51UE\x53\x54_M\x45T\x48\x4fD"]) ? $_SERVER["REQ\x55\x45S\x54\x5fME\x54HOD"] : "GET";
}
foreach ($this->routes as ${${"\x47\x4cOB\x41\x4c\x53"}["n\x7a\x6d\x61pg\x79n"]}) {
${"\x47\x4c\x4fBA\x4c\x53"}["xb\x62bpck\x70\x76i\x77\x6a"] = "\x72\x6f\x75\x74\x65";
${"G\x4c\x4fB\x41\x4c\x53"}["n\x6c\x6a\x67\x72s\x76"] = "t\x61\x72\x67e\x74";
$ktmcjdgfieef = "\x6d\x65\x74\x68o\x64\x73";
${"\x47\x4cOB\x41LS"}["\x75\x6f\x6a\x71\x73\x63jqlcx\x6b"] = "m\x65\x74\x68\x6f\x64\x5f\x6d\x61t\x63\x68";
$xydodcrxogq = "\x70o\x73\x69\x74io\x6e";
list(${$ktmcjdgfieef}, ${${"\x47L\x4fB\x41\x4c\x53"}["\x78\x62\x62\x62p\x63\x6bp\x76\x69w\x6a"]}, ${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["nljg\x72\x73\x76"]}, ${${"\x47\x4cO\x42\x41\x4cS"}["\x79\x6cq\x65\x6f\x6f\x70lvel\x6e"]}) = ${${"\x47\x4cO\x42\x41\x4c\x53"}["\x6e\x7ama\x70\x67\x79\x6e"]};
${${"G\x4c\x4fB\x41\x4c\x53"}["\x65\x6bi\x6ct\x70\x6f\x67\x6aodx"]} = (stripos(${${"\x47L\x4fBALS"}["\x62\x6f\x6ah\x6ex\x75mf\x7a"]}, ${${"\x47\x4c\x4fB\x41\x4cS"}["b\x7a\x62\x77\x67\x69\x73s\x6a"]}) !== false);
if (!${${"G\x4c\x4f\x42A\x4c\x53"}["u\x6f\x6a\x71\x73\x63j\x71l\x63x\x6b"]}) {
continue;
}
${"\x47\x4c\x4f\x42\x41\x4c\x53"}["l\x6d\x73\x76\x68xbor\x6br"] = "\x72o\x75\x74e";
$qtctxryvybli = "\x6d\x61\x74\x63h";
if (${${"\x47\x4c\x4fBA\x4c\x53"}["\x75\x69v\x67w\x6f\x73\x79k\x69"]} === "*") {
${${"\x47\x4c\x4f\x42\x41L\x53"}["\x78\x79\x72\x61st\x69t"]} = true;
} elseif (isset(${${"\x47\x4c\x4fB\x41\x4cS"}["ui\x76\x67wo\x73\x79\x6b\x69"]}[0]) && ${${"GL\x4f\x42\x41L\x53"}["u\x69\x76g\x77\x6fs\x79k\x69"]}[0] === "@") {
${"\x47\x4cOBAL\x53"}["\x65\x71r\x63\x6e\x64"] = "\x70at\x74er\x6e";
${"\x47L\x4f\x42\x41L\x53"}["p\x6d\x63\x65\x78\x64x"] = "\x6d\x61\x74\x63\x68";
${${"\x47\x4cO\x42\x41\x4c\x53"}["\x72sw\x6e\x6a\x6frm\x71a"]} = "\x60" . substr(${${"\x47L\x4f\x42\x41L\x53"}["ui\x76gwo\x73y\x6bi"]}, 1) . "`u";
${${"\x47L\x4fB\x41\x4c\x53"}["\x70\x6dce\x78\x64\x78"]} = preg_match(${${"\x47L\x4f\x42A\x4c\x53"}["\x65\x71\x72\x63\x6e\x64"]}, ${${"\x47\x4cO\x42A\x4c\x53"}["\x6eg\x69\x74wnq\x6ee\x72v"]}, ${${"\x47LO\x42AL\x53"}["\x68ogy\x64d\x6ajnc\x67"]}) === 1;
} elseif ((${$xydodcrxogq} = @strpos(${${"\x47\x4cOB\x41\x4c\x53"}["\x6c\x6d\x73\x76\x68\x78\x62o\x72\x6b\x72"]}, "[")) === false) {
${"\x47\x4cO\x42\x41\x4c\x53"}["\x6b\x73\x78\x7a\x67\x79\x74\x79"] = "\x72\x65\x71ues\x74Ur\x6c";
${"\x47\x4c\x4f\x42\x41\x4c\x53"}["p\x76y\x79\x68br\x6a\x68\x73\x75"] = "mat\x63\x68";
${${"G\x4c\x4fB\x41L\x53"}["p\x76\x79\x79\x68br\x6a\x68\x73u"]} = strcmp(${${"\x47\x4c\x4f\x42A\x4cS"}["k\x73\x78\x7a\x67\x79ty"]}, ${${"\x47\x4c\x4fBA\x4c\x53"}["u\x69vg\x77\x6fs\x79\x6b\x69"]}) === 0;
} else {
${"\x47\x4cOB\x41\x4cS"}["\x6e\x6c\x6a\x79\x7a\x72m\x69u"] = "\x72\x65\x71\x75\x65\x73\x74\x55r\x6c";
${"GL\x4f\x42ALS"}["\x72\x75\x68\x6asd\x77\x77\x6d\x71"] = "l\x61st\x52equ\x65\x73\x74\x55\x72\x6c\x43h\x61r";
$insjkpjosl = "\x72e\x71\x75es\x74U\x72\x6c";
$pqoojyvgm = "\x72\x6f\x75t\x65";
${"\x47\x4c\x4f\x42\x41\x4c\x53"}["v\x62\x76\x74\x64\x62\x6a\x70\x72"] = "\x72\x65\x67\x65x";
${"\x47\x4c\x4f\x42\x41\x4c\x53"}["ra\x6dm\x77\x62\x6f\x79v\x63\x66"] = "\x70\x6fsit\x69o\x6e";
$yopfduxtz = "\x6dat\x63\x68";
if (@strncmp(${${"GL\x4fBAL\x53"}["\x6el\x6a\x79\x7a\x72\x6d\x69u"]}, ${${"GL\x4f\x42\x41\x4c\x53"}["\x75i\x76\x67\x77osyk\x69"]}, ${${"\x47\x4cOB\x41LS"}["\x73\x64\x62\x68\x67m\x72g"]}) !== 0 && (${${"\x47LOB\x41\x4c\x53"}["r\x75\x68\x6a\x73d\x77\x77\x6d\x71"]} === "/" || @${$pqoojyvgm}[${${"\x47\x4c\x4f\x42AL\x53"}["\x72\x61m\x6dw\x62o\x79vcf"]} - 1] !== "/")) {
continue;
}
${${"\x47\x4c\x4f\x42AL\x53"}["\x76b\x76\x74d\x62\x6a\x70\x72"]} = $this->compileRoute(${${"\x47\x4c\x4fB\x41\x4c\x53"}["\x75\x69\x76gw\x6fs\x79\x6b\x69"]});
${$yopfduxtz} = preg_match(${${"G\x4c\x4fBA\x4cS"}["\x6e\x75\x65\x72\x63\x6a"]}, ${$insjkpjosl}, ${${"G\x4c\x4fB\x41\x4c\x53"}["\x68o\x67y\x64\x64\x6a\x6a\x6ecg"]}) === 1;
}
if (${$qtctxryvybli}) {
$iwsenircqs = "p\x61r\x61\x6d\x73";
if (${$iwsenircqs}) {
$dvxpsvsad = "\x6b\x65\x79";
$tkrkwurwfjow = "\x76a\x6c\x75\x65";
foreach (${${"\x47LOBA\x4c\x53"}["ho\x67\x79\x64d\x6aj\x6e\x63\x67"]} as ${$dvxpsvsad} => ${$tkrkwurwfjow}) {
if (is_numeric(${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x65\x6df\x7a\x66d"]})) {
${"\x47\x4c\x4f\x42\x41LS"}["\x75\x6d\x76\x67\x70\x77\x73\x64l"] = "\x6bey";
${"\x47L\x4f\x42\x41\x4cS"}["k\x70\x78o\x6b\x71\x6d\x6f\x69p"] = "\x70\x61r\x61\x6d\x73";
unset(${${"\x47L\x4f\x42\x41L\x53"}["k\x70\x78o\x6b\x71mo\x69\x70"]}[${${"\x47\x4c\x4fB\x41\x4c\x53"}["u\x6dvg\x70\x77\x73\x64\x6c"]}]);
}
}
}
return ["\x74\x61rg\x65\x74" => ${${"\x47LOBA\x4c\x53"}["\x71\x67\x6d\x6bhhkzl\x66\x70"]}, "\x70a\x72ams" => ${${"\x47\x4c\x4fB\x41\x4c\x53"}["hog\x79\x64\x64j\x6a\x6ec\x67"]}, "\x6ea\x6d\x65" => ${${"G\x4cO\x42\x41\x4c\x53"}["yl\x71eo\x6fpl\x76el\x6e"]}];
}
}
return false;
}
protected function compileRoute($route)
{
$cyiiydjm = "m\x61\x74\x63h\x65\x73";
if (preg_match_all("\x60(/|\x5c\x2e|)\x5c[([^:\x5c]]*+)(?::([^:\x5c]]*+))?\x5c](\x5c?|)\x60", ${${"GLOB\x41\x4c\x53"}["\x75\x69vg\x77\x6f\x73y\x6bi"]}, ${$cyiiydjm}, PREG_SET_ORDER)) {
${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x75w\x62owq\x6fm\x73ioh"] = "\x6d\x61t\x63h";
${${"\x47\x4cO\x42\x41L\x53"}["z\x64lj\x78a\x6a\x67"]} = $this->matchTypes;
foreach (${${"G\x4cO\x42\x41\x4cS"}["i\x67f\x65\x6b\x74\x69\x62"]} as ${${"GL\x4f\x42\x41\x4cS"}["u\x77\x62o\x77\x71o\x6dsi\x6f\x68"]}) {
$qviwyktg = "\x72\x6fu\x74\x65";
${"G\x4c\x4f\x42\x41\x4c\x53"}["\x62f\x68\x65y\x66e\x66\x77\x77\x70"] = "op\x74\x69\x6fn\x61\x6c";
${"\x47L\x4f\x42\x41\x4c\x53"}["\x6f\x66k\x6f\x66z\x61udy\x68"] = "\x70\x72e";
$mblrjulxr = "\x6fp\x74\x69o\x6e\x61l";
$pvoqxqvui = "\x6d\x61\x74\x63\x68";
${"\x47\x4c\x4f\x42\x41LS"}["gce\x6d\x77\x70\x6f"] = "\x6f\x70\x74\x69\x6f\x6eal";
${"\x47\x4cOB\x41L\x53"}["\x63dmv\x7a\x69\x78\x62"] = "o\x70ti\x6f\x6e\x61\x6c";
${"\x47L\x4fBAL\x53"}["m\x62\x66\x70g\x73\x74\x62\x61b\x6a"] = "\x74\x79p\x65";
${"\x47\x4cO\x42\x41\x4c\x53"}["y\x63\x66\x6c\x77\x75\x78v"] = "\x70\x72\x65";
$qoozfb = "\x72\x6f\x75\x74\x65";
${"\x47\x4c\x4fB\x41\x4c\x53"}["\x67\x77\x61\x66\x6f\x62\x6c\x6ei\x64j\x67"] = "\x6d\x61\x74\x63\x68\x54\x79\x70\x65s";
$liwrzzs = "blo\x63\x6b";
${"\x47L\x4f\x42\x41\x4cS"}["\x70io\x77\x63\x77\x70p\x79\x64s"] = "bloc\x6b";
list(${${"G\x4cO\x42\x41LS"}["\x70\x69o\x77c\x77\x70\x70\x79ds"]}, ${${"\x47\x4c\x4f\x42A\x4cS"}["\x6ff\x6b\x6f\x66zaud\x79\x68"]}, ${${"GLOBA\x4c\x53"}["\x71f\x6f\x62\x67\x63\x67\x77\x6dmr"]}, ${${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x66w\x76\x6b\x6b\x69u"]}, ${${"G\x4c\x4fBAL\x53"}["b\x66\x68\x65\x79fef\x77\x77p"]}) = ${$pvoqxqvui};
if (isset(${${"\x47\x4cOB\x41\x4cS"}["\x67w\x61f\x6fb\x6cn\x69\x64j\x67"]}[${${"\x47\x4cO\x42A\x4c\x53"}["\x6d\x62\x66\x70g\x73\x74\x62\x61\x62j"]}])) {
${"G\x4c\x4fBAL\x53"}["\x68j\x6a\x74b\x6f\x70\x6cqf"] = "\x74\x79\x70e";
${${"\x47L\x4f\x42\x41L\x53"}["q\x66o\x62\x67\x63\x67\x77mm\x72"]} = ${${"\x47\x4cOBAL\x53"}["\x7a\x64lj\x78\x61\x6a\x67"]}[${${"\x47\x4c\x4f\x42ALS"}["h\x6a\x6a\x74\x62op\x6c\x71\x66"]}];
}
if (${${"GL\x4fBA\x4c\x53"}["pt\x76\x67\x79n\x73\x67\x6dv\x68"]} === "\x2e") {
$ymtgrltyowlh = "\x70r\x65";
${$ymtgrltyowlh} = "\\.";
}
${${"\x47\x4c\x4f\x42\x41\x4cS"}["g\x63em\x77\x70o"]} = ${${"G\x4c\x4f\x42A\x4c\x53"}["k\x6c\x69\x67\x68p\x6f"]} !== "" ? "?" : null;
${${"\x47L\x4f\x42\x41L\x53"}["\x72\x73\x77\x6e\x6a\x6fr\x6d\x71a"]} = "(?:" . (${${"\x47\x4cO\x42A\x4c\x53"}["pt\x76\x67\x79n\x73\x67\x6dv\x68"]} !== "" ? ${${"\x47\x4c\x4f\x42\x41LS"}["y\x63\x66\x6cw\x75x\x76"]} : null) . "(" . (${${"G\x4c\x4fB\x41\x4c\x53"}["\x66w\x76\x6bk\x69\x75"]} !== "" ? "?P\x3c$param>" : null) . ${${"\x47L\x4fB\x41L\x53"}["qf\x6f\x62\x67\x63\x67\x77\x6d\x6dr"]} . ")" . ${$mblrjulxr} . ")" . ${${"\x47\x4cO\x42\x41\x4c\x53"}["\x63\x64\x6dv\x7a\x69\x78\x62"]};
${$qoozfb} = str_replace(${$liwrzzs}, ${${"\x47\x4cO\x42\x41\x4c\x53"}["\x72\x73\x77n\x6a\x6fr\x6d\x71a"]}, ${$qviwyktg});
}
}
return "`^$route$`\x75";
}
}
Function Calls
| None |
Stats
| MD5 | d72f5d72af368bcbac846eb3bd5a6c46 |
| Eval Count | 0 |
| Decode Time | 66 ms |