Сделать 4-значное целое число из одного, двух или трех цифр целым числом в PHP

Я делаю вызов базы данных для получения идентификатора определенного элемента. Обычно есть идентификаторы типа: 1, 2, 14, 23, .... Мне нужно получить идентификатор из БД и вывести его 4-значное число.

Например: Идентификатор моего результата: 1. Теперь, когда у меня есть это значение, я хочу, чтобы он стал 0001. Или, если мой идентификатор результата 13, он должен стать 0013 и т.д.

Как я могу достичь этого с помощью php без изменения реального ID в базе данных?

Ответ 1

Вы хотите zerofill целое число.

Вы можете либо сделать sprintf('%04u', $n), либо str_pad($n, 4, '0', STR_PAD_LEFT).

Ответ 2

Как всегда.

sprintf("%04d", $num)

Ответ 3

Вам нужна функция PHP strpad:

<?php
$input = 1;
echo str_pad($input, 4, "0", STR_PAD_LEFT);  // produces "0001"
?>

Ответ 4

Если вы хотите сделать это внутри MySQL-запроса, вот оно

SELECT LPAD(id, 4, '0') as modified_id FROM table;