MudGuard: Zahlen mit führender 0 formatieren

Beitrag lesen

Hi,

ich will diese daten in ein mysql date-feld übernehmen.
dazu muss aber ja nicht eine 1 im value attribut stehen, sondern eine "01"...

Sagt wer?

mysql> show columns from datum;
+-------+------------+------+-----+------------+----------------+
| Field | Type       | Null | Key | Default    | Extra          |
+-------+------------+------+-----+------------+----------------+
| id    | bigint(20) |      | PRI | NULL       | auto_increment |
| tag   | date       |      |     | 0000-00-00 |                |
+-------+------------+------+-----+------------+----------------+
2 rows in set (0.01 sec)

mysql> insert into datum (id, tag) values (0, "2004-11-3");
Query OK, 1 row affected (0.00 sec)

mysql> select * from datum;
+----+------------+
| id | tag        |
+----+------------+
|  1 | 2004-11-03 |
+----+------------+
1 row in set (0.00 sec)

Beachte das Format des Datums beim insert und beim anschließenden select.

gibt es eine möglichkeit, mit php zahlen unter immer zweistellig zu formatieren? also mit einer führenden 0?

  • Zahlen: nein. Beachte dabei auch, daß bei Zahlen eine führende Null eine besondere Bedeutung hat:

echo 011 + 1; // gibt logischerweise 10 aus.

  • Strings, die eine Zahl darstellen: ja (neben den bereits genannten Lösungen: sprintf("%02d", $zahl) bzw. printf)

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.