2025-06-22-ean
[PHP] puntu bat (.) esteka parametroaren izen batean
Imagina dezagun esteka hori: index.php?aldagaia.1=bat&aldagaia.2=bi
Suposatuko dugu, $_GET aldagaiaren barruan hori aurkituko dugu:
[
"aldagaia.1" => "bat",
"aldagaia.2" => "bi"
]
Baina EZ!
Php-ri ezker (https://www.php.net/manual/en/language.variables.external.php#language.variables.external.dot-in-names) puntuak azpimarraz ordezkatzen dira!
[
"aldagaia1" => "bat",
"aldagaia_2" => "bi"
]
Momentuz, ez dago saihesteko konponbiderik, eta benetako parametroak bilatzeko funtzio bat sortu behar dugu:
function realGET($data)
{
$data = preg_replace_callback('/(?:^|(?<=&))[^=[]+/', function($match) {
return bin2hex(urldecode($match[0]));
}, $data);
parse_str($data, $values);
return array_combine(array_map('hex2bin', array_keys($values)), $values);
}
$newGET = realGET($_SERVER['QUERY_STRING']);