Autor Zpráva
FILIP
Profil *
Ahoj,
potrebujem zmeniť DEC sústavu do HEX...
pr. : číslo 10 vypíše ako A ... použil som nato funkciu dechex

Mojim problémom je, že potrebujem aby mi nevypisovalo iba A, ale aby pred tú hodnotu písalo aj 0.. tvar: 0A ..
neviete poradiť ako by to bolo možné?
Bertram
Profil
Ahoj, trošku si ji zkus upravit podle svých představ, např. takto:
function myDechex($value) {
  $dechex = dechex($value);
  $dechex = strtoupper(strlen($dechex)<2 ? "0$dechex" : $dechex);
  return $dechex;
}
Davex
Profil
FILIP:
Použil bych funkci

$hexa = sprintf('%02X', $desitkove);
FILIP
Profil *
používam viac hodnôt, čiže moja funkcia vyzerá nasledovne :
function myDechex($value) {
            $dechex = explode('.',$value);
            $dechex = array();
  $dechex[$i] = dechex($value[$i]);
  $dechex[$i] = strtoupper(strlen($dechex[$i])<2 ? "0$dechex[$i]" : $dechex[$i]);
  return implode('.',$dechex);
}

do výpisu potom dávam :
<?php echo myDechex($dechex); ?>

Avšak vypisuje mi iba 00

Moderátor Majkl578: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Bertram
Profil
FILIP:
Ahoj, tak jak to máš to ani jinak dopadnout nemohlo, porovnej:

function myDechex($value) {
  $values = explode('.',$value);
  foreach ($values as $item) {
    $dechex = dechex($item);
    $arDechex[] = strtoupper(strlen($dechex)<2 ? "0$dechex" : $dechex);
    }
  return $arDechex;
}
FILIP
Profil *
tak nakoniec som to spravil takto...

function myDechex($value)
{
    return sprintf('%02x%02x%02x%02x', $value[0], $value[1], $value[2], $value[3]);
}

potreboval by som však ešte aby medzi každou hodnotou vypisovalo bodku v tvare napr.:
58.2C.80.FA
abc
Profil *
Tak to imho delas blbe. Spis si tu fci prepis jen pro jednu hodnotu, pomoci foreach projed pole a tou fci si preved vsechny hodnoty v poli a potom pole implode s teckou do stringu

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0