![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 18.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
niestety brakuje mi wiedzy na ten temat, a szukając w google brakuje pomysłów jak to skleić w całość...
mam plik tekstowy "users.txt"
każda linia zawiera dane oddzielone spacjami w cudzysłowach, a linia jest zakończona "; $userid" gdzie userid ma być identyfikatorem dla danej linii z danymi proszę o podpowiedź jak edytować linię z konkretnym userid na końcu, czyli znajduje linię z konkretnym "; $userid", zastępuje całą linią nową linią? pozdrawiam Ten post edytował mount 18.10.2010, 16:43:04 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Hm, może tak:
- pobrać plik do zmiennej - przetworzyć zawartość funkcją explode (entery), albo wyrażeniami regularnymi - każdą linie masz w tablicy - jeżeli $userid to nie kolejne liczby od 0 wzwyż (zbyt proste) to tablice by trzeba było drugi raz przetworzyć: z każdego wiersza wyciągnąć sam numer (wyrażenia regularne) i przypisać to do nowej tablicy. tablica 0 => tablica2[userid] = tresc wiersza tablica 1 => tablica2[userid] = tresc wiersza tablica 2 => tablica2[userid] = tresc wiersza Potem jeśli chcesz usunąć jakiś wiersz na podstawie userid to po prostu: tablica2[$userid] = nowa tresc; Jeśli zapis do pliku to zawartość tablicy do zmiennej i nadpisanie pliku. Na pewno coś lepszego da się z tym zrobić ale sposób to jest.. Ten post edytował markonix 18.10.2010, 23:00:15 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 18.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
poszukam jak to załadować do tablicy, czekam jeszcze na jakieś propozycje dziękuje (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
poszukam jak to załadować do tablicy Użyłeś funkcji, która to robi za Ciebie tylko z indeksami o które nie będziesz mógł się oprzeć. Dlatego gdy już użyjesz explode to wykonaj pętle foreach na tej tablicy i stwórz nową tablice. Przy każdym obrocie musisz wykonać tylko proste wyrażenie regularne wyciągające userid. Potem tylko $nowaTablica[$userid] = $value; Ten post edytował markonix 18.10.2010, 22:58:11 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 18.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 14:33 |