Coordinate.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\utils;
  8. class Coordinate
  9. {
  10. public static function getCoordinateByAddress($address)
  11. {
  12. $url = 'https://restapi.amap.com/v3/geocode/geo?parameters';
  13. $res = \http_get($url, [
  14. 'query' => [
  15. 'address' => $address,
  16. 'output' => 'json',
  17. 'key' => '1fc46e05a373343122c68fbc2b045050',
  18. ],
  19. ]);
  20. if ($res->getStatusCode() !== 200) {
  21. return [
  22. 'code' => 1,
  23. 'msg' => '网络错误',
  24. ];
  25. }
  26. $content = json_decode((string)$res->getBody(), true);
  27. if ($content['status'] && $content['status'] == '1') {
  28. list($longitude, $latitude) = \explode(',', $content['geocodes'][0]['location']);
  29. return [
  30. 'code' => 0,
  31. 'data' => [
  32. 'longitude' => $longitude,
  33. 'latitude' => $latitude,
  34. ],
  35. ];
  36. }
  37. return [
  38. 'code' => 1,
  39. 'msg' => '网络错误11',
  40. ];
  41. }
  42. }