variable von vorne mit 0 auffüllen
alöp
- php
Hallo,
ich habe eine Variable mit variabler Zeichenanzahl, diese soll jetzt automatisch auf eine bestimmte länge mit 0 aufgefüllt werden.
Bsp.:
$variable='efd';
soll werden
$variable='00000efd';
$variable_2='abcde';
soll werden
$variable_2='000abcde';
Gibt es daüfr eine einfache Möglichkeit?
Gruß
Hai Aloep,
Gibt es daüfr eine einfache Möglichkeit?
JA,
<?php
$val = 'asdf';
echo sprintf('%019s', $val);
?>
Gruss Norbert
Hi,
echo sprintf('%019s', $val);
'%08x'?
Cheatah
Hai,
'%08x'?
nicht raten, ausprobieren und dann posten.
Im OP ging es um Strings, also 'c' wie Charakter.
Gruss Norbert
Hi,
'%08x'?
nicht raten, ausprobieren und dann posten.
danke für den Hinweis.
Im OP ging es um Strings, also 'c' wie Charakter.
Den Inhalt der Strings hast Du Dir aber schon angesehen, oder?
Cheatah
Hi,
nicht raten, ausprobieren und dann posten.
danke für den Hinweis.
Dann rate ich mal weiter ;)
Im OP ging es um Strings, also 'c' wie Charakter.
Den Inhalt der Strings hast Du Dir aber schon angesehen, oder?
Hier steht, dass man Hexzahlen mit 0x am Anfang zuweist.
Streng genommen handelt es sich also hier wohl um Strings, aber da PHP (im Gegensatz zu anderen Sprachen wie C) sehr großzügig mit der Interpretation von Datentypen ist spielt das hier wohl keine Rolle.
mfG,
steckl
Hallo,
ich habe eine Variable mit variabler Zeichenanzahl, diese soll jetzt automatisch auf eine bestimmte länge mit 0 aufgefüllt werden.
Bsp.:$variable='efd';
soll werden
$variable='00000efd';
str_pad wäre wohl hier das Richtige.
Aber auch vorne '00000000'. dazugeben und dann passend abschneiden
scheint nicht so aufwändig zu sein.
Grüsse
Cyx23
Hai,
str_pad() ist fuer linksbuendigen Text geeignet,
und mit sprintf() erzeugt man rechtsbuendigen Text.
Gruss Norbert
Hallo Norbert,
str_pad() ist fuer linksbuendigen Text geeignet,
das allerdings auch.
Ansonsten:
$var = "abc";
$var = str_pad($var, 8, "0", STR_PAD_LEFT);
Grüsse
Cyx23