изменение значения аргумента функции, когда я добавляю начальный ноль к числу в переполнении стека

function finderror($arg1, $arg2, $arg3) {
....
}

$arg1 = 054;
$arg2 = array('val1' => 12, 'val2' => 'T');
$arg3 = array('val1' => 12, 'val2' => 'T');

finderror($arg1, $arg2, $arg3);

$ arg2 и $ arg3 передаются как массивы.
$ arg1 передается как число. Проблема в том, что, когда я передаю число с начальным нулем (054) вместо начального нуля (54), число становится 44 в функции. Я хочу три номера места. Всякий раз, когда я добавляю ведущий ноль, числовое значение изменяется. Как я должен сделать ??

-3

Решение

Если вам предшествует целочисленное значение с 0, которое указывает восьмеричное (основание 8) значение. В этом случае 054 (восьмеричное значение) совпадает с 44 (десятичное). Увидеть Справочник по PHP

Непонятно, зачем вам нужно передавать три цифры для вашей функции. Вы можете передать трехсимвольную строку: "054"или вы можете отформатировать число для вывода в самой функции:

$arg = 54;
$output = sprintf('%03d', $arg); // "054"
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector