2010-08-25 5 views
13

Möchten Sie alle 0 entfernt am Anfang einer Variablen entfernt werden.PHP entfernen erste Nullen

Einige Optionen:

  1. wenn $var = 0002, sollten wir zuerst Streifen 000 ($var = 2)
  2. wenn var = 0203410 sollten wir zuerst 0 ($var = 203410)
  3. wenn var = 20000 entfernen - nichts tun ($var = 20000)

Was ist die Lösung?

Antwort

48

Guss es

$var = (int)$var; 
+0

Fehlende Semikolon: p – Lekensteyn

+1

@Lekensteyn: Nur wenn es eine Anweisung statt ein Ausdruck sein soll. – Gumbo

+0

es war nicht die ganze Linie :) ehehhe – drAlberT

11

Vielleicht ltrim?

$var = ltrim($var, '0'); 
2
$var = strval(intval($var)); 

auf ganzzahlige oder wenn Sie nicht über eine Zeichenfolge verbleibenden egal, wandeln nur in int und es dabei zu belassen.

7

Dies funktioniert nur bei Strings, Zahlen beginnend mit einer 0 werden als Oktalzahlen interpretiert, Mehrfachnullen werden ignoriert.

2

Verwenden Sie einfach + innen Variablen:

echo +$var; 
+0

Interessant.Können Sie einen Link zu der relevanten Dokumentation veröffentlichen? – brasofilo

+0

Wirklich ich habe keine Referenz! aber funktioniert wie ein Charme! Ändern Sie die Zeichenfolgen in Zahlen, und entfernen Sie alle unnötigen Nullen, und ändern Sie die Zeichenfolge in die Zahl. – poostchi

+0

Ein + unärer Operator wirkt auf Zahlen, Sie tun also eine implizite Umwandlung ... schlechter Code, da er die Logik mit keinen anderen Vorteilen verbirgt IMHO ... – drAlberT