Вы можете написать функцию, которая справится с этим любым удобным вам способом. Почему бы и нет?
function fval($f, $precision = 9) {
return number_format($f, $precision);
}
Тогда в любом месте, которое вам нужно отформатировать, выкрикивайте это:
$f = 3.485E-5;
echo fval($f); // this will print: 0.000003485
Я не соглашаюсь с ответом @aku.
Я думаю, что Вы делаете, прекрасен и существуют также другие способы сделать это, которые являются не более или менее правильными. Например, можно подвергнуть сомнению, должен ли этот объект быть в зависимости от сервисов во-первых.
Независимо от DI я чувствую, что полезно разъяснить в Вашем уме, по крайней мере, вид состояния, которое каждый объект содержит, такие как реальное состояние (Порядок), полученное состояние (если таковые имеются), и зависимости (сервисы):
http://tech.puredanger.com/2007/09/18/spelunking/
На любом конструкторе или методе, я предпочитаю, чтобы реальные данные были переданы сначала и зависимости или внешний материал, который будет передан в последний раз. Таким образом в Вашем примере я предпочел бы первое.
Я чувствую себя немного беспокоящимся о разрешении экземпляра OrderForm быть инстанцированным без необходимой ссылки на экземпляр Порядка. Одна причина могла бы состоять в том, что это будет препятствовать тому, чтобы я делал заранее проверку пустые заказы. Дальнейшие мысли?
Я предполагаю, что мог взять некоторый комфорт в знании, что объекты OrderForm только инстанцирует Метод фабрики, который гарантирует, что свойство Order установлено после совершения звонка к платформе МОК.
Матовый, Вы не должны смешивать нормальные параметры с зависимостями. Так как Ваш объект будет создан во внутренностях контейнера МОК, как Вы собираетесь указать необходимые аргументы?
Смешивание зависимости и нормальных аргументов сделает логику Вашей программы более сложной.
В этом случае это было бы лучше объявить свойства зависимости (т.е. удалить зависимости от конструктора) или инициализировало бы поле порядка после того, как МОК создал OrderForm и разрешил, что это - зависимости (т.е. удалите нормальные параметры от конструктора).
Также можно объявить все параметры, включая порядок как зависимости.