Witam mam pytanko.
Hmm wiec zaczne od poczatku. Chcę zrobić taki automat żeby dodawał dane które znajdą się w plikach txt w danym katalogu do bazy danych SQL.
Chodzi mi o rozpoznawanie poszczególnych zmiennych.
Mam plik
costamcostam.txt i w nim przykladowe dane, ciąg znaków:
N5004023E01956555+00160015N0056E0000U0000_V0,T6każda zmienna jest dodawana w następujący sposób:
<?php
// Tworzenie tablicy z danych zawartych w pliku:
function make_data_array($files, $index) {
// Wczytanie do tablicy zawartosci pliku:
$content = file($files[$index]);
// Tylko pierwsza linia pliku znaczaca, przepisanie do łańcucha:
$position_string = $content[0];
// Utworzenie tablicy z odpowiednimi danymi:
$gps_data['znak_szerokosci'] = substr($position_string, 0
, 1
); // Wytnij znak szerokości goeogrficznej $gps_data['szerokosc_stopnie'] = substr($position_string, 1
, 2
); // Wytnij szerokosc geograficzna $szerokosc_minuty1 = substr($position_string, 3
, 2
); // Wytnij część całkowitą prędkości pionowej $szerokosc_minuty2 = substr($position_string, 5
, 3
); // Wytnij część ułamkową prędkości pionowej $gps_data['szerokosc_minuty'] = ("$szerokosc_minuty1.$szerokosc_minuty2"); // Wytnij szerokosc geograficzna
$gps_data['znak_dlugosci'] = substr($position_string, 8
, 1
); // Wytnij znak dlugosci goeogrficznej $gps_data['dlugosc_stopnie'] = substr($position_string, 10
, 2
); // Wytnij dlugosci geograficzna $dlugosc_minuty1 = substr($position_string, 12
, 2
); // Wytnij część całkowitą prędkości pionowej $dlugosc_minuty2 = substr($position_string, 14
, 3
); // Wytnij część ułamkową prędkości pionowej $gps_data['dlugosc_minuty'] = ("$dlugosc_minuty1.$dlugosc_minuty2"); // Wytnij dlugosci geograficzna
$gps_data['znak_wysokosci'] = substr($position_string, 17
, 1
); // Wytnij znak wysokosci n.p.m. $gps_data['wysokosc'] = substr($position_string, 18
, 5
); // Wytnij wysokosc n.p.m.
// Zwracamy wygenerowana tablice:
return $gps_data;
?>
Tylko robi on to dobrze dopoki dane są zamieszczane po koleji w plikach. Jeśli natomiast zamienimy dane miejscami to nie trudno się domyślić że wyjdą bzdury. Można zrobić tak żeby wycinał po koleji po jednym znaku rozpoznawal i później wycinal - tylko cos mi weny brakuje.
Ma ktoś pojęcie jak zrobić przykładowo,żeby automatycznie rozpoznawał np: literkę N i po tej literce wycinał 7 znaków.