printf()
отлично работает, если вы всегда что-то печатаете, но sprintf()
дает вам больше гибкости.Если бы вы использовали эту функцию, $threshold
было бы 4 .
/**
* Add leading zeros to a number, if necessary
*
* @var int $value The number to add leading zeros
* @var int $threshold Threshold for adding leading zeros (number of digits
* that will prevent the adding of additional zeros)
* @return string
*/
function add_leading_zero($value, $threshold = 2) {
return sprintf('%0' . $threshold . 's', $value);
}
add_leading_zero(1); // 01
add_leading_zero(5); // 05
add_leading_zero(100); // 100
add_leading_zero(1); // 001
add_leading_zero(5, 3); // 005
add_leading_zero(100, 3); // 100
add_leading_zero(1, 7); // 0000001