Обрезать любые нули в начале строки с помощью PHP

Пользователи будут заполнять поле с номерами, относящимися к их учетной записи. К сожалению, некоторые пользователи будут иметь нули с префиксом в начале номера, чтобы составить шестизначное число (например, 000123, 001234), а другие не будут (например, 123, 1234). Я хочу "обрезать" числа от пользователей, которые были префиксными нулями спереди, поэтому, если пользователь входит в 000123, он удалит нули, чтобы стать 123.

Я посмотрел на trim и substr, но я не верю, что они сделают эту работу?

Ответ 1

Вы можете использовать ltrim() и передать символы, которые должны быть удалены как второй параметр:

$input = ltrim($input, '0');
// 000123 -> 123

ltrim удаляет только указанные символы (пустое значение по умолчанию) с начала (слева) строки.

Ответ 2

ltrim($usernumber, "0");

должен выполнить эту работу в соответствии с PHP Manual

Ответ 3

$number = "004561";
$number = intval($number, 10);
$number = (string)$number; // if you want it to again be a string

Ответ 4

Вы всегда можете заставить PHP анализировать это как int. Если вам нужно, вы можете преобразовать его обратно в строку позже

(int) "000123"

Ответ 5

Вы можете удалить ведущие нули, перейдя из строки в число и обратно. Например:

$str = '000006767';
echo ''.+$str; // echo "6767"

Ответ 6

Просто умножьте свой номер на ноль.

$input=$input*1;
//000000123*1 = 123