Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Generator współrzędnych. Problem
warland
post 19.02.2018, 00:14:02
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 22.01.2018

Ostrzeżenie: (10%)
X----


Witam.
Potrzebuję pomocy we wprowadzeniu do skryptu pewnej poprawki.

Skrypt generuje współrzędne z danego przedziału liczb.
Potrzebuję dodać wyjątek który będzie omijał wyniki gdy tylko jedna ze współrzędnych posiada 2 liczby po przecinku.
Przykład na podstawie wyników generowanych przez poniższy skrypt:
- wygenerowana współrzędna (49.1 , 16) - poprawna, (49.15 , 16.1) - niepoprawna, (49.15 , 16.05) - poprawna

Co dodać w skrypcie by nie były wyświetlane te współrzędne niepoprawne?


Skrypt:
  1. <?php
  2. // wielkość pola między 1 a 12
  3. $box_size = 0.05;
  4.  
  5. // liczby 84 i 180 są maksymalną wielkością (od ujemnej do dodatniej) mapy google
  6. $lat_limit = 50;
  7. $lat_limit_min = 49;
  8. $lng_limit = 17;
  9. $lng_limit_min = 16;
  10.  
  11. $result = '';
  12. $land_insert_statement = "coord_slug , lat , lng";
  13. $result .= $land_insert_statement;
  14. $result .= '<br>';
  15.  
  16. $i = 0.05;
  17. for ($lng = $lng_limit_min; $lng <= $lng_limit; $lng = $lng + $box_size) {
  18.  
  19. for ($lat = $lat_limit_min; $lat <= $lat_limit; $lat = $lat + $box_size) {
  20. // Zapobiega błędowi, w którym -180 i 180 nakładają się, tworząc ląd, do którego interfejs użytkownika nie może uzyskać dostępu
  21. if ($lng != '-180') {
  22. $coord_slug = $lat . ',' . $lng;
  23. $result .= " . $coord_slug . ', ' . $lat . ', ' . $lng . '";
  24. if ($i % 1000 == 0)
  25. {
  26. $result .= ';';
  27. $result .= '<br>';
  28. $result .= $land_insert_statement;
  29. $result .= '<br>';
  30. } else {
  31. $result .= ',';
  32. }
  33. $result .= '<br>';
  34. $i++;
  35. }
  36. }
  37. }
  38.  
  39.  
  40. $search = ',';
  41. $replace = ';';
  42. $result = strrev(implode(strrev($replace), explode($search, strrev($result), 2)));
  43.  
  44. echo $result;


Ten post edytował warland 19.02.2018, 16:16:14
Go to the top of the page
+Quote Post

Posty w temacie
- warland   [PHP] Generator współrzędnych. Problem   19.02.2018, 00:14:02
- - Kshyhoo   A jakie są kryteria poprawności?   19.02.2018, 07:10:51
- - warland   Cytat(Kshyhoo @ 19.02.2018, 07:10:51 ...   19.02.2018, 08:09:47
- - trueblue   http://forum.php.pl/index.php?s=&showt...t...   19.02.2018, 08:12:32
- - warland   Cytat(trueblue @ 19.02.2018, 08:12:32...   19.02.2018, 08:17:32
- - trueblue   Cytat(warland @ 19.02.2018, 08:17:32 ...   19.02.2018, 08:30:19
- - Pyton_000   A nie możesz po prostu wszystkich liczb zapisać z ...   19.02.2018, 08:32:35
- - warland   Cytat(trueblue @ 19.02.2018, 08:30:19...   19.02.2018, 08:41:17
- - trueblue   Cytat(warland @ 19.02.2018, 08:41:17 ...   19.02.2018, 08:48:47
- - warland   nie potrafię sobie z tym poradzić. Więc oferuje 15...   19.02.2018, 14:11:49
- - aras785   O to chodzi? [PHP] pobierz, plaintext <?php// ...   19.02.2018, 14:51:32
- - nospor   @aras pomijajac fakt, ze jakos kazdy tutaj ignoruj...   19.02.2018, 15:17:41
- - warland   a pisałem by do mnie najpierw się zgłosić by nie b...   19.02.2018, 15:36:01
- - nospor   @warland draki by nie bylo jakbys sie nie wyglupia...   19.02.2018, 15:40:13
- - warland   szczerze to chciałem udowodnić sobie i swoim znajo...   19.02.2018, 15:53:46
- - nospor   CytatJeśli porównasz zaokrągloną do jednego miejsc...   19.02.2018, 15:57:11
- - warland   a świstak zawija w te sreberka i zawija.. przejrzy...   19.02.2018, 16:06:46
- - nospor   Juz pedze szukac twoim tematow na stackoverlow... ...   19.02.2018, 17:47:33
- - Pyton_000   @nospor aż zaczynam się ciebie bać Powinieneś pra...   19.02.2018, 18:17:40
- - warland   Cytat(nospor @ 19.02.2018, 17:47:33 )...   19.02.2018, 20:54:48
- - nospor   Hmm.... koles https://stackoverflow.com/users/9373...   19.02.2018, 21:08:21


Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:48