1

Google APIでポイント(緯度/経度)を設定しようとしていますが、次のようなことをしていました

new LatLon(<?php echo (float)$lat ?>,<?php echo(float)$lng)?>);

しかし、一部のサーバーでは、これが機能していないことがわかりました。

echo (float)1.1; ===== > display 1,1 (comma is the french separator for decimal)

「エコー」が1.1を返さないのは正常ですか?? これは最近のphpバージョンで新しいものですか?

正しい解決策は次のとおりです。

<?php echo json_encode((float)$lat)?>
4

2 に答える 2

1

はい、echoロケールを使用します。これをコードの前に入れます:

setlocale(LC_NUMERIC, 'en_US');

必要に応じて、単純に設定することもできます

setlocale(LC_ALL, 'en_US');
于 2013-05-22T16:40:09.107 に答える
0

floatval 関数を使用してそれを達成できます

<?php
$var = '122.34343The';
$float_value_of_var = floatval($var);
echo $float_value_of_var; // 122.34343
?>

以下のように、number_format を使用して小数点以下の桁数を指定することもできます。

number_format($float_value_of_var,2); // 122.34

編集:私の悪い、上記のディストロイはロケールの設定について正しいです

于 2013-05-22T16:44:44.307 に答える