Обрезать любые нули в начале строки с помощью 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