PHP убрать первые нули - PullRequest
       22

PHP убрать первые нули

17 голосов
/ 25 августа 2010

Хотите удалить все 0, помещенные в начало некоторой переменной.

Некоторые параметры:

  1. , если $var = 0002, мы должны удалитьпервый 000 ($var = 2)
  2. , если var = 0203410, мы должны удалить первый 0 ($var = 203410)
  3. , если var = 20000 - ничего не делать ($var = 20000)

Какое решение?

Ответы [ 7 ]

59 голосов
/ 25 августа 2010

приведите его к целому числу

$var = (int)$var;
20 голосов
/ 25 августа 2010

Может быть ltrim?

$var = ltrim($var, '0');
8 голосов
/ 25 августа 2010
$var = ltrim($var, '0');

Это работает только для строк, числа, начинающиеся с 0, будут интерпретироваться как восьмеричные числа, множественные нули игнорируются.

3 голосов
/ 15 июня 2014

Просто используйте + внутри переменных:

echo +$var;
3 голосов
/ 25 августа 2010
$var = strval(intval($var));

или, если вас не волнует, что строка остается, просто конвертируйте в int и оставьте все как есть.

1 голос
/ 20 июля 2018

Умножьте на 1

$var = "0000000000010";
print $var*1;  

//prints 10
0 голосов
/ 04 мая 2018

Осторожно на типе литья;

var_dump([
    '0014010011071152',
    '0014010011071152'*1,
    (int)'0014010011071152',
    intval('0014010011071152')
]);

Отпечатки:

array(4) {
    [0]=> string(16) "0014010011071152"
    [1]=> float(14010011071152)
    [2]=> int(2147483647)
    [3]=> int(2147483647)
}
...