1

XLSファイルから移植されたデータベースがあります。私の番号はこの形式です

3.41002E+13  

ただし、読み取り可能な形式は次のようになります。34100224263318

最初のフォームを2番目のフォームに変換するにはどうすればよいですか?

4

4 に答える 4

5

number_format()を使用する

string number_format(float $ number、int $ decimals = 0、string $ dec_point ='。'、string $ 1000s_sep ='、')

デフォルトでは、数千がで区切られ,ているため、4つの引数すべてを渡す必要があります。

number_format(3.41002E+13, 0, ".", "");
34100200000000

ご覧のとおり、追加の問題があります。精度が失われます。少なくとも、そもそもそこにはありませんでした。

于 2012-07-24T13:34:21.913 に答える
3

あなたは使用する必要があります、ここnumber_formatでそれをチェックしてください

于 2012-07-24T13:33:01.507 に答える
1

3.41002E + 13 == 3.41002 * 10 ^ 13 == 3.41002 * 100000000000000

ただのフロートタイプです。これを実現したい場合は、number_format();を使用する必要があります。

number_format(3.41002E+13) == 34100224263318

phant0mがコメントしたように

number_format(1.11E-2) == 0,00111

ただし、整数の場合、ドットを使用するだけで問題ありません。

number_format(1.11E-2, 5, '.', '') == 0.00111
于 2012-07-24T13:35:14.297 に答える
1

正確な数値を取得することはできません(例:34100224263318)。「Ex」は10 ^ xを表し、実際の数値の近似値として桁数の多い数値に使用されます。number_formatは、人間が読み取れる標準的な数値バージョンで近似値を取得するために使用できるものです(Exも読み取り可能ですが、とにかく)。

于 2012-07-24T13:40:13.677 に答える