Lembre-se que que a separação de casas decimais no PHP é com ponto, não com virgula. Caso esteje com virgula, o PHP deve estar se "confundindo". Na minha máquina essa função trabalhou direitinho, do jeito que você passou... Claro que separando as casas com ponto, quando usei virgula ele retornou (5,6->5,00), com ponto (5.6->5,60). falou