Tak, ale to nie będzie tablica asocjacyjna :] Pozatym dam chyba kod bo cięzko jest mnie zrozumieć. Konstruktor mojej klasy:
[php:1:09e56b662e]<?php
function txt_file($file_name){
if(!file_exists($file_name))
CreateEmptyFile($file_name);
$this->file_name = $file_name;
$this->lines = explode("n", str_replace("r", '', join('', file($file_name))));
$this->cnt = count($this->lines);
unset($this->lines[--$this->cnt]);
}
?>[/php:1:09e56b662e]
I teraz chodzi o to, żeby do każdej linijki (każdego elementu zmiennej klasowej lines) dodąc na początek jego klucz (będzie to poprostu kolejny numer indexu). Czyli jeśli zawartość pierwszej lini w pliku jest taka:
Kod
Cudi|+|cudi@wp.pl
To trzeba by ją zamianić na taką:
Kod
0|+|Cudi|+|cudi@wp.pl
I teraz nie wiem czy da sie to osiągnąć bez użycia pętli, bo w między czasie pomyślałem troche i doszedłem do tego że łatwo to można osiągnąć foreachem ($this->lines as $key => $line) :]
Może jeszcze wyjaśnie po co to wszystko :] Ano klasa ma możliwość wybrania dowolych linijek od do i posortowania ich (używam array_multisort()). A klucz danej linijki normlanie jest jej id, do którego moge sie odnieść usuwająć ją lub edytując. A po sortowaniu klucze sie pomieszają, i potem już nikt nie będzie wiedział co sie zapisze, co updateuje itd :] I teraz próbująć dojść do tego jak temu zapobiec wpadłem na pomysł aby poprostu dodać te klucze na początek linijek i mieć je zgłowy :]