Jak pobrać dane ze zmiennej (kilka tyś. liczb) do tablicy?
mike
1.08.2006, 09:41:55
Daj przykład bo chyba nie czaję. Jak wygląda ta zmienna?
japek
1.08.2006, 09:55:09
Wartość zmiennej po wyświetleniu to np. 46.3 46.3 46.3 46.3 46.3 46.3 46.3 46.3 46.3 46.4 46.3 46.3 46.3 46.3 46.3 46.3 46.3 46.2 46.2 46.2 46.2 46.2 46.2 46.1 46.1 46.1 46.2 46.2 46.2 46.1 itp... i chciałbym te liczby jakoś do tablicy powrzucać aby było "46.3", "46.3", ...
Potrzebuje rozbić plik tekstowy, w którym dane są oddzielone spacją, czy da sie to zrobić za pomocą explode? Podzieliłem cały plik na linie i teraz dalej musze to rozbić ale explode potrzebuje chyba jakiegośznaku a ja mam spacje - czy tylko substr to potrafi? HELP
I do niego dostales wlasnie rozwiązanie. jaja se robisz?
japek
1.08.2006, 10:16:19
Nie bo to mi coś nie chce działać mimo że robie jak trzeba, bez błędu. Tak to nawet bym tu nie zaglądał gdyby działało. Nie wiem czy problem nie tkwi w tym, że mimo iż wyświetlany ciąg znaków posiada 1 spację to explode tego nie chce rozbić. Może tak być?
Dane pochodzą z pliku, wszystko jest sprawne. Rozbijam plik tekstowy na linie, potem z kazdej linii biorę kilka potrzebnych znaków (dane mam w kilku rzędach) i mam już potrzebne dane ale teraz są one w zmiennej $t8
ale ty explode robisz w petli na $t8? Bo jak nie to za kazdym obiegiem petli ta zmienna jest nadpisywana i tracisz dane. Pokaz caly kod, pokaz przykladowych pare linii z pliku. Pamietaj rownież o tym, ze file() zwraca znaki konca wierszy.
japek
2.08.2006, 09:07:50
Wcześniej nie wiedziałem że to tworzy tyle tablic ile linii z pliku (dlatego myślałem że cośnie tak póki nie odpaliłem podglądu z <pre>), tylko teraz jeszcze połączyć te tablice w jedną i będzie ok.
W pętli tworzę takie tablice i chciałbym je połączyć na koniec w jedną tablicę. Nie wiem czy funkcją Merge_array się da bo nie ma konkretnych nazw tablic. Po wyświetleniu na stronie <pre> mam takie tablice (jest ich znacznie więcej):
array(1) { [0]=> string(4) "41.1" }
array(1) { [0]=> string(4) "41.5" }
array(1) { [0]=> string(4) "45.9" }
mike
2.08.2006, 09:09:58
A jak tworzysz te tablice? Pokaż kod.
Skoro dajesz je do print_r() to masz nazwy zmiennych, czy nie?
Przy każdym obrocię pętli wstawiaj sobie aktualną tablicę do jakiejś innej - zbiorczej. array_push()
Zakładam, że w Twoim kodzie klamra, która zgubiłeś, jest na końcu
nospor
2.08.2006, 09:25:56
@japek 3 mozliwosci: 1) uzywaj array_merge w petli 2) zmienna $t8 najpierw zbuduj ze wszystkich liczb a potem na niej zrob explode 2) yyy, patrzac na twoj print_r widac, ze zawsze tam jest jeden element, czyli jedna liczba. to na grzyba bawic sie w explode? skoro tam jest jedna liczba to nie trzeba nic dzielic tylko ja zapisywac do tablicy: