PHP ati SQL: Ṣe iṣiro tabi Ijinna Ibeere Laarin Awọn aaye ti Latitude ati Longitude

wiwọn ijinna
Akoko Aago: 3 iṣẹju

Oṣu yii Mo ti ṣe siseto eto diẹ ni PHP ati MySQL pẹlu ọwọ si GIS. Lilọ kiri ni ayika apapọ, Mo ni akoko lile lati wa diẹ ninu awọn iṣiro Ilẹ-ilẹ lati wa aaye laarin awọn ipo meji nitorinaa Mo fẹ lati pin wọn nibi.

Ọna ti o rọrun lati ṣe iṣiro aaye laarin awọn aaye meji ni lilo agbekalẹ Pythagorean lati ṣe iṣiro hypotenuse ti onigun mẹta kan (A² + B² = C²). Eyi ni a mọ bi awọn Ijinna Euclidean.

Iyẹn jẹ ibẹrẹ ti o nifẹ ṣugbọn ko waye pẹlu Geography nitori aaye laarin awọn ila ti latitude àti Longitude wa kii ṣe aaye to dogba yato si. Bi o ṣe sunmọ sunmọ equator, awọn ila ti latitude wa siwaju si iyatọ. Ti o ba lo iru idogba onigun mẹta kan ti o rọrun, o le wọn iwọn ijinna deede ni ipo kan ati pe o jẹ aṣiṣe nla ni ekeji, nitori iyipo ti Earth.

Ilana Haversine

Ofurufu Map Europe

Ijinna nipa lilo iyipo ti Earth ni a dapọ ninu Agbekalẹ Haversine, eyiti o lo trigonometry lati gba aaye fun iyipo ti ilẹ. Nigbati o ba n wa aaye laarin awọn aaye 2 ni ilẹ (bi kuroo ti n fo), ila laini jẹ aaki.

Eyi wulo ni fifo afẹfẹ - ṣe o ti wo maapu gangan ti awọn ọkọ ofurufu ti o ṣe akiyesi pe wọn ti lọ? Iyẹn nitori pe o kuru ju lati fo ni oju-ọna laarin awọn aaye meji ju taara si ipo naa.

PHP: Ṣe iṣiro Ijinna Laarin Awọn aaye 2

Lonakona, eyi ni agbekalẹ PHP fun iṣiro iṣiro aaye laarin awọn aaye meji (pẹlu Mile la. Iyipada Kilomita) ti yika si awọn aaye eleemewa meji.

function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2, $unit = 'miles') {
  $theta = $longitude1 - $longitude2; 
  $distance = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta))); 
  $distance = acos($distance); 
  $distance = rad2deg($distance); 
  $distance = $distance * 60 * 1.1515; 
  switch($unit) { 
    case 'miles': 
      break; 
    case 'kilometers' : 
      $distance = $distance * 1.609344; 
  } 
  return (round($distance,2)); 
}

SQL: Gbigba Gbogbo Awọn Igbasilẹ Laarin Ibiti Nipasẹ Iṣiro Ijinna Ni Awọn Maili Lilo Latitude ati Longitude

O tun ṣee ṣe lati lo SQL lati ṣe iṣiro kan lati wa gbogbo awọn igbasilẹ laarin ijinna kan pato. Ni apẹẹrẹ yii, Mo n beere MyTable ni MySQL lati wa gbogbo awọn igbasilẹ ti o kere ju tabi dogba si iyipada $ ijinna (ni Awọn Maili) si ipo mi ni $ latitude ati $ longitude:

Ibeere fun gbigba gbogbo awọn igbasilẹ laarin kan pato ijinna nipa iṣiro iṣiro ni awọn maili laarin awọn aaye meji ti latitude àti ìgùn ni:

$query = "SELECT *, (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180)) + cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`)*pi()/180)))) * 180/pi()) * 60 * 1.1515) as distance FROM `table` WHERE distance <= ".$distance."

Iwọ yoo nilo lati ṣe akanṣe eyi:

  • $ ìgùn - eyi jẹ iyipada PHP nibiti Mo n kọja gigun ti aaye naa.
  • $ latitude - eyi jẹ iyipada PHP nibiti Mo n kọja gigun ti aaye naa.
  • $ ijinna - eyi ni aaye ti iwọ yoo fẹ lati wa gbogbo awọn igbasilẹ kekere tabi dogba si.
  • tabili - eyi ni tabili… iwọ yoo fẹ lati rọpo iyẹn pẹlu orukọ tabili rẹ.
  • latitude - eyi ni aaye ti latitude rẹ.
  • jijin - eyi ni aaye ti gigun gigun rẹ.

SQL: Gbigba Gbogbo Awọn Igbasilẹ Laarin Ibiti Nipasẹ Iṣiro Ijinna Ni Awọn Kilomita Lilo Latitude ati Longitude

Ati pe eyi ni ibeere SQL nipa lilo awọn ibuso ni MySQL:

$query = "SELECT *, (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180)) + cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`) * pi()/180)))) * 180/pi()) * 60 * 1.1515 * 1.609344) as distance FROM `table` WHERE distance <= ".$distance."

Iwọ yoo nilo lati ṣe akanṣe eyi:

  • $ ìgùn - eyi jẹ iyipada PHP nibiti Mo n kọja gigun ti aaye naa.
  • $ latitude - eyi jẹ iyipada PHP nibiti Mo n kọja gigun ti aaye naa.
  • $ ijinna - eyi ni aaye ti iwọ yoo fẹ lati wa gbogbo awọn igbasilẹ kekere tabi dogba si.
  • tabili - eyi ni tabili… iwọ yoo fẹ lati rọpo iyẹn pẹlu orukọ tabili rẹ.
  • latitude - eyi ni aaye ti latitude rẹ.
  • jijin - eyi ni aaye ti gigun gigun rẹ.

Mo lo koodu yii ni pẹpẹ maapu ti ile-iṣẹ ti a lo fun itaja itaja pẹlu awọn ipo ti o ju 1,000 kọja Amẹrika ariwa ati pe o ṣiṣẹ daradara.

76 Comments

  1. 1

    O ṣeun pupọ fun pinpin. Eyi jẹ ẹda ti o rọrun ati iṣẹ lẹẹ ati ṣiṣẹ nla. O ti fipamọ igba pupọ fun mi.
    FYI fun ẹnikẹni ti n gbe ni C:
    ilọpo meji deg2rad (ilọpo meji) {deg pada * (3.14159265358979323846 / 180.0); }

  2. 2

    Nkan ti o dara pupọ ti ifiweranṣẹ - ṣiṣẹ dara julọ - MO ni lati yi orukọ tabili nikan dani lat-gun. O ṣiṣẹ ni iyara si .. Mo ni nọmba kekere ti o ni oye ti lat-longs (<400) ṣugbọn Mo ro pe eyi yoo ṣe iwọn daradara. Aaye ti o wuyi paapaa - Mo ti ṣafikun rẹ si akọọlẹ del.icio.us mi ati pe yoo ṣayẹwo nigbagbogbo.

  3. 4
  4. 5
  5. 8

    Mo ro pe SQL rẹ nilo alaye nini.
    dipo IBI ijinna <= $ ijinna o le nilo lati
    lo IBI jijin <= $ ijinna

    bibẹkọ ti o ṣeun fun fifipamọ mi opo ti akoko ati agbara.

  6. 10
  7. 11
  8. 12

    O ṣeun pupọ fun pinpin koodu yii. O ti fipamọ mi ni akoko idagbasoke pupọ. Pẹlupẹlu, o ṣeun fun awọn oluka rẹ fun titọka pe alaye HAVING jẹ pataki fun MySQL 5.x. Iranlọwọ pupọ.

  9. 14
  10. 15

    Pẹlẹ o,

    Ibeere miiran. Ṣe agbekalẹ kan wa fun awọn okun NMEA bii eyi ti o wa ni isalẹ?

    1342.7500, N, 10052.2287, E

    $GPRMC,032731.000,A,1342.7500,N,10052.2287,E,0.40,106.01,101106,,*0B

    o ṣeun,
    Harry

  11. 16

    Mo tun rii pe NIBI ko ṣiṣẹ fun mi. Yi pada si NV ati pe ohun gbogbo n ṣiṣẹ ni pipe. Ni akọkọ Emi ko ka awọn asọye ki o tun kọwe rẹ nipa lilo aṣayan itẹ-ẹiyẹ. Awọn mejeeji yoo ṣiṣẹ daradara.

  12. 17
  13. 18

    Iranlọwọ iyalẹnu, o ṣeun pupọ! Mo ni awọn iṣoro diẹ pẹlu “NIGBA” tuntun, dipo “NIBI”, ṣugbọn ni kete ti Mo ka awọn asọye nibi (lẹhin to idaji wakati kan ti lilọ awọn eyin mi ni ibanujẹ = P), Mo gba pe o ṣiṣẹ daradara. O ṣeun ^ _ ^

  14. 19
  15. 20

    Ranti pe alaye yiyan bii iyẹn yoo jẹ kikankikan iṣiro pupọ ati nitorinaa o lọra. Ti o ba ni ọpọlọpọ awọn ibeere wọnyẹn, o le fa awọn nkan mọlẹ ni kiakia.

    Ọna ti ko nira pupọ julọ ni lati ṣiṣe yiyan akọkọ (robi) ni lilo agbegbe SQUARE ti o ṣalaye nipasẹ ijinna iṣiro ie “yan * lati tablename nibiti latitude laarin lat1 ati lat2 ati longitude laarin lon1 ati lon2”. lat1 = targetlatitude - latdiff, lat2 = targetlatitude + latdiff, bakanna pẹlu lon. latdiff ~ = ijinna / 111 (fun km), tabi ijinna / 69 fun awọn maili lati igba 1 iwọn latitude jẹ ~ 111 km (iyatọ diẹ nitori aye jẹ ofali diẹ, ṣugbọn o to fun idi eyi). londiff = ijinna / (abs (cos (deg2rad (latitude)) * 111)) - tabi 69 fun awọn maili (o le gba square ni kekere ti o tobi pupọ lati le ṣe akoto fun awọn iyatọ). Lẹhinna mu abajade iyẹn ki o jẹun sinu yiyan radial. O kan maṣe gbagbe lati ṣe akọọlẹ fun awọn ipoidojuko ti aala-ie ibiti ibiti gigun-itẹwọgba itẹwọgba jẹ -180 si +180 ati ibiti latitude itẹwọgba itẹwọgba jẹ -90 si +90 - bi o ba jẹ pe latdiff rẹ tabi londiff rẹ n sare ni ita agbegbe yii . Akiyesi pe ni ọpọlọpọ awọn ọran eyi le ma wulo nitori o kan awọn iṣiro lori ila kan nikan nipasẹ okun pacific lati polu si polu, botilẹjẹpe o pin apakan apakan ti chukotka ati apakan alaska.

    Ohun ti a ṣaṣepari nipasẹ eyi jẹ idinku nla ninu nọmba awọn aaye ti o fi ṣe iṣiro yii. Ti o ba ni awọn aaye kariaye miliọnu kan ninu ibi ipamọ data ti a pin ni aijọju ati pe o fẹ lati wa laarin 100 km, lẹhinna iṣawari akọkọ rẹ (yara) jẹ ti agbegbe 10000 sq km ati pe yoo jasi fun ni awọn abajade 20 (da lori paapaa pinpin lori agbegbe ti o fẹrẹ to 500M sq km), eyi ti o tumọ si pe o nṣiṣẹ iṣiro ijinna idiju 20 awọn akoko fun ibeere yii dipo awọn akoko miliọnu kan.

    • 21

      Aṣiṣe kekere ni apẹẹrẹ… iyẹn yoo wa laarin 50 km (kii ṣe 100) nitori a n wo “radius” ti… onigun mẹrin wa.

      • 22

        Imọran ikọja! Mo ṣiṣẹ gangan pẹlu olugbala kan ti o kọ iṣẹ kan ti o fa igun inu ati lẹhinna iṣẹ atunkọ kan ti o ṣe ‘awọn onigun mẹrin’ ni ayika agbegbe lati ṣafikun ati ya awọn aaye ti o ku silẹ. Abajade jẹ abajade iyara iyalẹnu - o le ṣe iṣiro awọn miliọnu awọn ojuami ninu awọn iṣẹju-aaya.

        Ọna mi loke jẹ dajudaju 'robi' ṣugbọn o lagbara. Mo dupe lekan si!

        • 23

          Doug,

          Mo ti n gbiyanju lati lo MySQL ati PHP lati ṣe iṣiro boya aaye to gun lat laarin polygon kan. Njẹ o mọ boya ọrẹ Olùgbéejáde rẹ ṣe atẹjade eyikeyi awọn apẹẹrẹ lori bii o ṣe le ṣe iṣẹ yii. Tabi ṣe o mọ awọn apẹẹrẹ ti o dara eyikeyi. O ṣeun siwaju.

  16. 24

    Bawo gbogbo eniyan eyi ni alaye SQL idanwo mi:

    SELECT DISTINCT area_id, (
    (
    (
    acos( sin( ( 13.65 * pi( ) /180 ) ) * sin( (
    `lat_dec` * pi( ) /180 ) ) + cos( ( 13.65 * pi( ) /180 ) ) * cos( (
    `lat_dec` * pi( ) /180 )
    ) * cos( (
    ( 51.02 - `lon_dec` ) * pi( ) /180 )
    )
    )
    ) *180 / pi( )
    ) *60 * 1.1515 * 1.609344
    ) AS distance
    FROM `post_codes` WHERE distance <= 50

    ati Mysql n sọ fun mi pe ijinna, ko si tẹlẹ bi ọwọn kan, Mo le lo aṣẹ nipasẹ, Mo le ṣe laisi IBI, o si n ṣiṣẹ, ṣugbọn kii ṣe pẹlu rẹ…

  17. 26

    Eyi jẹ nla, sibẹsibẹ o jẹ gẹgẹ bi awọn ẹiyẹ ti n fo. Yoo jẹ ohun nla lati gbiyanju ati ṣafikun awọn maapu google API si ọna yii (boya ni lilo awọn ọna abbl.) O kan lati fun ni imọran ni lilo ọna gbigbe miiran. Mo tun ni sibẹsibẹ lati ṣe iṣẹ ifasita afarawe ni PHP ti yoo ni anfani lati funni ni ojutu ti o munadoko si iṣoro olutaja arinrin-ajo. Ṣugbọn Mo ro pe Mo le ni anfani lati tun lo diẹ ninu koodu rẹ lati ṣe bẹ.

  18. 27
  19. 28

    O dara nkan! Mo wa ọpọlọpọ awọn nkan ti o ṣe apejuwe bi o ṣe le ṣe iṣiro aaye laarin awọn aaye meji ṣugbọn Mo n wa snippet SQL gaan.

  20. 29
  21. 30
  22. 31
  23. 32
  24. 36

    Awọn ọjọ 2 ti iwadi lati wa ni oju-iwe ni ipari ti o yanju iṣoro mi. O dabi pe mo dara igbamu jade WolframAlpha mi ki o fẹlẹ lori awọn mathimatiki mi. Iyipada lati NIBI si N HA ni iwe afọwọkọ mi ni aṣẹ ṣiṣẹ. E DUPE

  25. 37
  26. 39

    Mo fẹ pe eyi ni oju-iwe akọkọ ti Mo rii lori eyi. Lẹhin igbidanwo ọpọlọpọ awọn ofin oriṣiriṣi eyi nikan ni ọkan lati ṣiṣẹ daradara, ati pẹlu awọn ayipada ti o kere ju ti o nilo lati ba data data mi lọ.
    O ṣeun lọpọlọpọ!

  27. 40

    Mo fẹ pe eyi ni oju-iwe akọkọ ti Mo rii lori eyi. Lẹhin igbidanwo ọpọlọpọ awọn ofin oriṣiriṣi eyi nikan ni ọkan lati ṣiṣẹ daradara, ati pẹlu awọn ayipada ti o kere ju ti o nilo lati ba data data mi lọ.
    O ṣeun lọpọlọpọ!

  28. 41
  29. 42
  30. 43
  31. 45
  32. 46
  33. 47

    Mo mọ pe agbekalẹ yii n ṣiṣẹ, ṣugbọn Emi ko le rii ibiti a ṣe ka rediosi ti aye si akọọlẹ. Jọwọ, ẹnikẹni ha le tàn mi loju?

  34. 49
  35. 50
  36. 52
  37. 53
  38. 55
  39. 56
  40. 58

    o ṣeun fun fifiranṣẹ nkan iranlọwọ yii,  
    ṣugbọn fun idi kan Emi yoo fẹ lati beere
    bawo ni a ṣe le gba aaye laarin awọn isomọ inu mysql db ati awọn ifibọ ti a fi sii si php nipasẹ olumulo?
    fun apejuwe diẹ sii ni kedere:
    1. olumulo ni lati fi sii [id] fun yiyan data pàtó lati db ati awọn iṣakoso olumulo funrararẹ
    2. faili php gba data afojusun (awọn isomọ) ni lilo [id] ati lẹhinna ṣe iṣiro aaye laarin olumulo ati aaye ibi-afẹde

    tabi o kan le gba ijinna si koodu ti o wa ni isalẹ?

    $ qry = “Yan *, (((acos (sin ((.. $ latitude.” * pi () / 180)) * sin ((“Latitude` * pi () / 180)) + cos ((“. $ latitude. ”* pi () / 180)) * cos ((“ Latitude` * pi () / 180)) * cos (((“. $ longitude.” - “Longitude`) * * pi () / 180) ))) * 180 / pi ()) * 60 * 1.1515 * 1.609344) bi ijinna LATI “MyTable`NIGBATI ijinna> =“. Ijinna $. ” >>>> Ṣe Mo le “mu” ijinna lati ibi?
    mo dupe lekan si,
    Timmy S.

    • 59

      maṣe lokan, Mo ti ṣe akiyesi bii “iṣẹ” ṣe n ṣiṣẹ ni php
      $ dis = getDistanceBetweenPointsNew ($ userLati, $ userLongi, $ lati, $ longi, $ unit = 'Km')
      o ṣeun lọpọlọpọ!! 

  41. 60

    ok, ohun gbogbo ti Mo ti gbiyanju ko ṣiṣẹ. Mo tumọ si, ohun ti Mo ni awọn iṣẹ, ṣugbọn awọn ijinna wa ni pipa.

    Ṣe ẹnikẹni le rii kini aṣiṣe ninu koodu yii?

    ti (ipilẹṣẹ ($ _ POST ['ti fi silẹ'])) {$ z = $ _POST ['zipcode']; $ r = $ _POST ['radius']; iwoyi “Awọn abajade fun“. $ z; $ sql = mysql_query (“Yan DISTINCT m.zipcode, m.MktName, m.LocAddSt, m.LocAddCity, m.LocAddState, m.x1, m.y1, m.verified, z1.lat, z2.lon, z1. ilu, z1.state LATI mrk m, zip z1, zip z2 NIBI m.zipcode = z1.zipcode ATI z2.zipcode = $ z AND (3963 * acos (truncate (sin (z2.lat / 57.2958)) sin (m. y1 / 57.2958) + cos (z2.lat / 57.2958) * cos (m.y1 / 57.2958) * cos (m.x1 / 57.2958 - z2.lon / 57.2958), 8))) <= $ r ") tabi ku (mysql_error ()); lakoko ($ kana = mysql_fetch_array ($ sql)) {$ store1 = $ row ['MktName']. ””; $ itaja = $ kana ['LocAddSt']. ””; $ itaja. = $ kana ['LocAddCity']. ”,“. $ kana ['LocAddState']. ” “. $ Kana ['zipcode']; $ latitude1 = $ kana ['lat']; $ longitude1 = $ ìlà ['lon']; $ latitude2 = $ kana ['y1']; $ ìgùn2 = $ ìlà ['x1']; $ ilu = $ kana ['ilu']; $ ipinle = $ kana ['ipinle']; $ dis = getnew ($ latitude1, $ longitude1, $ latitude2, $ longitude2, $ unit = 'Mi'); // $ dis = ijinna ($ lat1, $ lon1, $ lat2, $ lon2); $ wadi = $ kana ['wadi']; ti o ba ($ wadi == '1') {iwoyi “”; iwoyi “”. $ itaja. ””; iwoyi $ dis. ”Maili (s) kuro”; iwoyi “”; } miran {iwoyi “”. $ itaja. ””; iwoyi $ dis. ”Maili (s) kuro”; iwoyi “”; }}}

    koodu function.php mi
    iṣẹ tuntun ($ latitude1, $ longitude1, $ latitude2, $ longitude2, $ unit = 'Mi') {$ theta = $ longitude1 - $ longitude2; $ ijinna = (sin (deg2rad ($ latitude1)) * sin (deg2rad ($ latitude2))) + (cos (deg2rad ($ latitude1)) * cos (deg2rad ($ latitude2)) * cos (deg2rad ($ theta)) ); $ ijinna = acos ($ ijinna); $ ijinna = rad2deg ($ ijinna); $ ijinna = $ ijinna * 60 * 1.1515; yipada ($ kuro) {ọran 'Mi': fọ; ọran 'Km': ijinna $ = ijinna $ * 1.609344; } pada (yika ($ ijinna, 2)); }

    Ṣeun ni ilosiwaju

  42. 61
  43. 62

    Hey Douglas, nkan nla. Mo ti rii alaye rẹ ti awọn imọran lagbaye ati koodu ti o nifẹ si gaan. Imọran mi nikan yoo jẹ si aaye ati tẹ koodu sii fun ifihan (bii Stackoverflow, fun apẹẹrẹ). Mo loye pe o fẹ lati ṣetọju aaye, ṣugbọn aye ti koodu aṣa / itọsi yoo jẹ ki o rọrun pupọ fun mi, gẹgẹ bi komputa kan, lati ka ati pinpin. Lọnakọna, iyẹn jẹ nkan kekere. Tọju iṣẹ nla naa.

  44. 64
  45. 65
  46. 66
  47. 67
  48. 68
  49. 69
  50. 70

    o dabi yiyara (Myysql 5.9) lati lo lemeji agbekalẹ ninu yiyan ati ibiti:
    agbekalẹ $ = “(((acos (sin ((.. $ latitude. * * pi () / 180)) * sin ((“ Latitude` * pi pi)) / 180)) + cos ((“. $ latitude. ”* Pi () / 180)) * cos ((“ Latitude` * pi () / 180)) * cos (((“. $ Longitude.” - “Longitude`) * pi () / 180)))) * 180 / pi ()) * 60 * 1.1515 * 1.609344) ”;
    $ sql = 'Yan *,'. agbekalẹ $. ' bi ijinna LATI tabili NIBI '.. $ agbekalẹ.' <= '. ijinna $;

  51. 71
  52. 72

    O ṣeun pupọ fun rirọ-ọrọ nkan yii. O wulo pupọ.
    A ṣẹda PHP ni akọkọ bi pẹpẹ iwe afọwọkọ ti o rọrun ti a pe ni “Oju-iwe Ile Ti ara ẹni”. Ni ode oni PHP (kukuru fun Proprocessor Hypertext) jẹ yiyan ti imọ-ẹrọ Microsoft Awọn oju-iwe Olupin Olupin (ASP).

    PHP jẹ ede olupin orisun orisun eyiti o lo fun ṣiṣẹda awọn oju-iwe wẹẹbu ti o ni agbara. O le fi sii sinu HTML. PHP ni a maa n lo ni apapo pẹlu ibi ipamọ data MySQL lori awọn olupin wẹẹbu Linux / UNIX. O ṣee ṣe o jẹ ede mimọ ti o gbajumọ julọ.

  53. 73

    Mo ti ri loke ojutu ko ṣiṣẹ daradara.
    Mo nilo lati yipada si:

    $ qqq = "Yan *, (((acos (sin ((.. $ latitude. * * pi () / 180)) * sin ((" latt` * pi () / 180)) + cos ((".) $ latitude. “* pi () / 180)) * cos ((“ latt` * pi () / 180)) * cos (((”. $ longitude.“ - “longt`) * pi () / 180) ))) * 180 / pi ()) * 60 * 1.1515) bi ijinna LATI “forukọsilẹ” “;

  54. 75

    o ṣeun sir n ṣiṣẹ ni pipe .. ṣugbọn Mo ni ibeere kan ti Mo ba fẹ gbejade laisi aaye eleemewa lẹhinna kini MO le ṣe ..?

    O ṣeun siwaju.

  55. 76

    Kaabo, jọwọ emi yoo nilo iranlọwọ rẹ gaan lori eyi.

    Mo ṣe ibere gbigba si olupin ayelujara mi http://localhost:8000/users/findusers/53.47792/-2.23389/20/
    53.47792 = $ latitude
    -2.23389 = $ ìgùn
    ati 20 = ijinna ti mo fẹ gba

    Sibẹsibẹ lilo agbekalẹ rẹ, o gba gbogbo awọn ori ila ninu db mi

    $ awọn esi = DB :: yan (DB :: raw (“Yan *, ((acos (sin ((.. $ latitude.” * pi () / 180)) * sin ((lat * pi () / 180) )) + cos ((“. $ latitude.” * pi () / 180)) * cos ((lat * pi () / 180)) * cos (((“. $ longitude.” - lng) * pi ( ) / 180)))) * 180 / pi ()) * 60 * 1.1515 * 1.609344) bi ijinna LATI awọn ami asami Nini aaye> = “. Ijinna $));

    [{“Id”: 1, ”orukọ”: “Frankie Johnnie & Luigo Too”, ”address”: “939 W El Camino Real, Mountain View, CA”, ”lat”: 37.386337280273, ”lng”: - 122.08582305908, ”Ijinna”: 16079.294719663}, {“id”: 2, ”orukọ”: “Amici's East Coast Pizzeria”, ”address”: ”790 Castro St, Mountain View, CA”, ”lat”: 37.387138366699, ”lng”: -122.08323669434, ”ijinna”: 16079.175940152}, {“id”: 3, ”orukọ”: “Kapp's Pizza Bar & Grill”, ”address”: “191 Castro St, Mountain View, CA”, “lat”: 37.393886566162, ”Lng”: - 122.07891845703, ”ijinna”: 16078.381373826}, {“id”: 4, ”name”: “Table Yika Pizza: Mountain View”, “adirẹsi”: “570 N Shoreline Blvd, Mountain View, CA”, ”Lat”: 37.402652740479, ”lng”: - 122.07935333252, ”distance”: 16077.420540582}, {“id”: 5, ”name”: “Tony & Alba's Pizza & Pasasta”, ”address”: ”619 Escuela Ave, Mountain Wiwo, CA ”,” lat ”: 37.394012451172,” lng ”: - 122.09552764893,” ijinna ”: 16078.563225154}, {“ id ”: 6,” name ”:” Pizza Fired Wood-Oregano ”,” address ”:” 4546 El Camino Real, Los Altos, CA ”,” lat ”: 37.401725769043,” lng ”: - 122.11464691162,” ijinna ”: 16077.937560795}, {“ id ": 7," orukọ ":" Awọn ifi ati awọn ohun mimu "," adirẹsi ":" 24 Whiteley Street, Manchester "," lat ": 53.485118865967," lng ": - 2.1828699111938," ijinna ": 8038.7620112314}]

    Mo fẹ lati gba awọn ori ila kan wa pẹlu awọn maili 20 ṣugbọn o mu gbogbo awọn ori ila wa. Jọwọ kini MO n ṣe aṣiṣe

Kini o le ro?

Aaye yii nlo Akismet lati dinku apamọ. Mọ bi a ṣe n ṣalaye data rẹ ti o ṣawari.