Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [PHP]Tworzenie tablicy ze stringa

Napisany przez: nosbyd 13.11.2019, 00:39:00

Cześć,

Jestem w trakcie pisania prostego skryptu, który z pliku tekstowego wyciągnie pewne elementy i wrzuci je do bazy.
Plik tekstowy w środku wygląda mniej więcej tak:

CODE
[...]
Typ=XXX 22:22
Time= :08.0
Info=XXyzIOO
;
Typ=XXX 22:23
Time= :10.0
Info=XXyzIOI
;
Typ=XXX 22:24
Time= :08.0
Info=XXyzIOA
;
[...]


Teoretycznie można to zrobić foreachem dla każdego stringa przypisując wartości do zmiennych typ, time i info, po czym po natknięciu się na średnik wszystkie zmienne wrzucić w bazę jako jeden rekord i wyczyścić zmienne i działać dalej, ale czy jest jakiś inny, łatwiejszy i mniej zasobożerny sposób?

Napisany przez: viking 13.11.2019, 07:49:24

Za dużo możliwości tu nie ma, możesz się co najwyżej pobawić generatorami żeby ograniczyć zużycie pamięci. Będzie prawie zerowe przy iteracjach.

  1. function parseData(http://www.php.net/array $data): Generator {
  2. foreach ($data as $key => $line) {
  3. $cKey = $key + 1;
  4. if ($cKey % 4 === 0) {
  5. continue;
  6. }
  7.  
  8. yield $line;
  9. }
  10. }
  11.  
  12. foreach (parseData(http://www.php.net/file('test.txt')) as $x) {
  13. http://www.php.net/var_dump($x);
  14. }

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)