okayupowerのブログ -3ページ目

okayupowerのブログ

自分用メモです。

まずは2日に1回、定期定期運動を始めます。
3か月で目標-5kg!


okayupowerのブログ
こんばんわ!

GWも終わり、言ってる間に夏ですね!
今年こそ痩せるよ!

経過を報告していきますヾ(@°▽°@)ノ
$text = ereg_replace("(https?|ftp)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)", "<a class=\"linkthumb\" href=\"\\1\\2\" target=\"_blank\">\\1\\2</a>" , $text);
<?php
function getLatLng($address){

$api_key = 'API KEY';
$api_uri = 'http://maps.google.com/maps/geo?key=' . $api_key . '&output=xml&ie=UTF8&q=';

//simpleXMLで読み込む
$xml = simplexml_load_file($api_uri . urlencode($address));
foreach($xml->Response as $res){
$code = $res->Status->code;
//正常に返された場合
if($code == '200'){
$coordinates = $res->Placemark->Point->coordinates;
}else{
$coordinates = FALSE;
}
}

return $coordinates;
}
if($coordinates = getLatLng($address)){
list($lng,$lat) = explode(',',getLatLng($address));
print <<<EOM
<ul>
<li>緯度:{$lat}</li>
<li>経度:{$lng}</li>
</ul>
EOM;
}
?>

DMS形式
・度/分/秒.秒表記(度/分/ミリ秒表記) 秒の表現は10進
35/39/15.152(35/39/15152) 139/45/27.932(139/45/27932)
・ミリ秒換算
128355152 503127932
ミリ秒単位→度単位  3600000で割る


DEG形式(Degree) dddd.ddddd
・度.度(10進)、緯度経度を単位”度”のみで表現
136.6694786


phpで緯度経度を扱う際に便利なライブラリ→Class Location

使い方
require('class.location.php');
$location = new location();
・測地系の変換 $tokyo = $location->wgs842tokyo($Lat, $Lng);
・座標形式の変換
  $TokyoLng = $location->deg2dms($tokyo[1]);
  $TokyoLat = $location->deg2dms($tokyo[0]);
・距離計算



その他

(緯度のmillisec)an=128480021
(経度のmillisec)ae=503182877

時間に変換

(緯度の時)128480021÷(60[分]×60[秒]×1000[ミリ秒])=35.688894722222
(経度の時)503182877÷(60[分]×60[秒]×1000[ミリ秒])=139.77302138889

tokyoからwgs84に変換

(緯度)35.688894722222+0.003236111111111111[固定値]=35.69212049
(経度)139.77302138889-0.0032027777777777775[固定値]=139.76981117