Intereting Posts
Как я могу запретить пользователям доступ к файлам include? PHP Ratchet: класс Memcache не найден Возможно ли получить информацию об оборудовании с помощью php или javascript? Отключить ошибки E_STRICT в файле php.ini по-прежнему вызывает ошибки Ошибка поиска: недействительный 2D-массив Программно извлекать ключевые слова из доменных имен Добавить echo на боковую панель wordpress для пользователей, не подключенных к сети Передача массива JavaScript на PHP через jQuery $ .ajax Еореп (); «Удаленный доступ к файлу хоста не принят» в локальном файле? php, как перейти на один уровень вверх по dirname (__ FILE__) Декодировать объект amf3 с помощью PHP Как переписать URL-адрес, чтобы удалить знак вопроса Динамически заданный язык с помощью CodeIgniter Как получить все данные с использованием отношения? Сканирование файлов в каталоге и подкаталоге и сохранение их пути в массиве с помощью php

PHP – Преобразование целочисленного целочисленного значения в float с тремя десятичными знаками

Я пытаюсь преобразовать большой массив чисел в конкретный формат, который равен +/- NNN.NNN. Итак, если у меня есть эти цифры:

$numbers1 = array(-1.23, 0.3222, 10, 5.54); 

Я хочу, чтобы их окончательный формат был

 $numbers2 = array(-001.023, +000.322, +010.000, +005.054); 

Я пытаюсь сделать это вот так:

 foreach ($numbers1 as $n) { $fnum = abs(number_format((float)$n, 3, '.', '')); if ($fnum>0 && $fnum<10) { $fnum = '00'.$fnum; } else if ($fnum >= 10 && $fnum<100) { $fnum = '0'.$fnum; } if ($n>0) $fnum = '+'.$fnum; if ($n<0) $fnum = '-'.$fnum; if ($n == 0) $fnum = '+000.000'; $numbers2[] = $fnum; 

}

Это неправильно, и я просто не знаю, что использовать для его достижения.

    Попробуйте использовать sprintf()

     $numbers2[] = sprintf("%+07.3f", $fnum);