Portál AbcLinuxu, 9. listopadu 2025 22:24
Ahoj, neví někdo jestli existuje funkce v php která dokáže zašifrovat/dešifrovat řetězec, kde budou ve výsledku jen znaky 0-1, a-z, A-Z. Čili žádné znaky =, %, /, + atd jim podobná ;) Moc prosím o pomoc
$result = '4564008801@7ččáíšýíýžzhjůkd@'; echo base64_encode($result); // NDU2NDAwODgwMUA3xI3EjcOhw63FocO9w63DvcW+emhqxa9rZEA=
$zakodovane = bin2hex($retezec); $retezec = hex2bin($zakodovane);Btw. nejde o šifrování, ale o kódování
class Decode
{
private static $map = array(
'1' => '0A',
'2' => '0B',
'3' => '0C',
'4' => '0D',
'5' => '0E',
'6' => '0F',
'7' => '0G',
'8' => '0H',
'9' => '0I',
'+' => '0J',
'/' => '0K',
'=' => '0L',
);
public function encode($v)
{
$v = base64_encode($v);
$v = str_replace('0', '00', $v);
foreach (self::$map as $key => $val) {
$v = str_replace($key, $val, $v);
}
return $v;
}
public function decode($v)
{
$v = str_replace('00', '_', $v);
foreach (self::$map as $key => $val) {
$v = str_replace($val, $key, $v);
}
$v = str_replace('_', '0', $v);
return base64_decode($v);
}
}
asi by se dalo najit efektivnejsi reseni, kazdopadne funguje a splnuje podminky.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.