![]() |
![]() |
![]() ![]()
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 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 09:52 |