Mam problem i nie wiem jak to ująć w ramy programowe. Otóż mam dwa pliki txt. Plik A.txt i plik B.txt, obydwa te pliki wczytywane są przez skrypt jako tablice funkcją file(nazwa_pliku)
W pliku A.txt mam wypisaną różną ilość rekordów (każdy w osobnej linijce) oddzieloną znakami '::' raz jest to 10 rekordów innym razem 5 rekordów. Wygląda mniej więcej tak:
rekord0
rekord1
rekord2
::
rekord3
rekord4
::
rekord5
W pliku B.txt mam także rekordy chodzi mi o to aby rekord z pliku B.txt inkrementował się o 1 w momencie napotkania znaku '::' w pliku A.txt w innym przypadku tablica wskazująca na rekord powinna być równy ilości inkrementacji do tej pory dokonanych na rekordach z pliku B.txt
Oto jak to wygląda w kodzie:
<?php
/****************FUNKCJA 1 ZWROC********************/
function zwroc($plik) { //funkcja inkrementujaca wartosc o 1 i zapisujaca to wartosc w pliku, funkcja zwraca ta wartosc
(int)$zmienna[0];
for ($i=$zmienna[0]; $i<$zmienna[0]+1; $i++) {
}
$otworz = @fopen($plik, 'w+'); //wskaznik na poczatku pliku if ($otworz) {
rewind ($otworz); //przesuwa wskaznik na poczatek pliku aby nadpisac poprzednia wartosc $zapisz = fwrite($otworz, $i); //zapisuje w pliku ile wyslal emiali return $i; //zwraca ilosc zapisanych ID
}
else {
echo 'Nie mogę przeczytać pliku ' . $plik; }
}
/****************FUNKCJA 1 ZWROC********************/
/****************FUNKCJA 2 ZWROC1********************/
function zwroc1($plik) { //funkcja oczytujaca ilosc obsluzonych katalogow
(int)$zmienna[0];
return $zmienna[0]; //zwraca ilosc obsluzonych katalogow
}
/****************FUNKCJA 2 ZWROC1********************/
$baseUrl = file("A.txt"); // wczytujemy liste danych do tablicy
// wczytujemy listę numerow ID
$ids1 = zwroc('ile.txt');
for($i=0
, $j=count($ids); $i<$j; $i++) {
if ($ids1 == '' || $ids1 == 0
) {$licznik1=0; echo 'Licznik rowny 0';} //WARUNEK0
if ($ids[$ids1]=='::') { //WARUNEK1 jesli napotkamy znak '::' wywolujemy funkcje inkrementowania o 1 i zapisania wartosci w pliku zewnetrznym ile1.txt
$licznik1 = zwroc('ile1.txt');
$baseUrl[$licznik1];
}
else {
$licznik1 = zwroc1('ile1.txt'); //WARUNEK2 w innym przypadku po prostu odczytujemy wartosc z pliku ile1.txt
$baseUrl[$licznik1];
}
echo 'Wartosc q dla Ids i to ' . $ids[$ids1] . '<br>'; //to wyswietla sie OK echo 'Licznik1 to ' . $licznik1 . '<br>'; //pobiera wartosc z pliku ale nie zmienia sie kiedy napotka WARUNEK1
//jakies inne instrukcje
?>