PHP JSON кодирует выходной номер как строку

Я пытаюсь вывести строку JSON с помощью PHP и MySQL, но широта и долгота выводятся в виде строки с кавычками вокруг значений. Это вызывает проблему, когда я пытаюсь добавить маркеры на карту Google.

Вот мой код:

$sql = mysql_query('SELECT * FROM markers WHERE address !=""');
$results = array();
while($row = mysql_fetch_array($sql))
{
   $results[] = array(
      'latitude' =>$row['lat'],
      'longitude' => $row['lng'],
      'address' => $row['address'],
      'project_ID' => $row['project_ID'],
      'marker_id' => $row['marker_id']
   );
}
$json = json_encode($results);

echo "{\"markers\":";
echo $json;
echo "}";

Вот ожидаемый результат:

{"markers":[{"latitude":0.000000,"longitude":0.000000,"address":"2234 2nd Ave, Seattle, WA","project_ID":"7","marker_id":"21"}]}

Вот результат, который я получаю:

{"markers":[{"latitude":"0.000000","longitude":"0.000000","address":"2234 2nd Ave, Seattle, WA","project_ID":"7","marker_id":"21"}]}

Обратите внимание на кавычки вокруг значений широты и долготы.

6
задан m_gunns 10 July 2012 в 02:56
поделиться