Mam separatory w tablicy. Biorę pierwszy i wyszukuje w tekście występowanie i pobieram tekst do pierwszego wystąpienia separatora, a następnie sprawdzam czy w tym stringu występują określone dwa znaki też pobrane z tablicy. Jeżeli ilość tych znaków jest taka sama lub w ogóle nie występują ten string będzie pobrany i dodatkowo obrobiony a następnie skasowany z całego tekstu, jeżeli nie i ilości są różne szukam kolejnego separatora i sprawdzam te same znaki jeszcze raz. Tablica z separatorami i tablica ze znakami nie są w żadne sposób powiązane, a co zostanie pobrane z tablic określa inna zamienna, która zakładam, że jest losowa bo ilość kombinacji fizycznie nie daje możliwości żeby stworzyć reguły dla każdej osobno.
Mam nadzieje, że w miarę jasno opisałem mój przypadek

W tym kodzie podałem po prostu dla uproszczenia konkretny separator oraz znaki.
Oczywiście ten kod nie będzie dziełem sztuki, ale później mam zamiar go przerobić na obiektowy tak, żeby uprościć wyszukiwanie elementów itp. Ale to chwilowo śpiew przyszłości muszę ogarnąć podstawy

function licznik($fragment, $znak){
for ( $i = 0; $i < strlen( $fragment ); $i++ ){ if ( $fragment[$i] == $znak ) {
$mamZnak++;
}
return $mamZnak;
}
}
Dobra jak to zaimplementować w kod, który wcześniej podałem. Całość nie jest napisana obiektowo pytanie czy jest w ogóle taka możliwość ? Chodzi o to, żeby wstawić to zamiast tego co jest w pętli while pomiędzy 14 a 30 linijką.