Czemu to sie tak dziwnie zachowuje:
mam takiego stringa:
Kod
$dane4='dfd fgfdg d<a href="index.php?kat=30" >Allegro</a> </li> <li><a href="index.php?kat=38" >Bank</a> </li> <li><a href="index.php?kat=13" >Biura turystyczne</a> </li> <li><a href="index.php?kat=1" >Biznes</a> </li> <li><a href="index.php?kat=36" >Budownictwo</a> </li> <li><a href="index.php?kat=37" >Dla Biura</a> </li> <li><a href="index.php?kat=35" >Dla Dzieci</a> </li> <li><a href="index.php?kat=31" >Ebay</a> </li> <li><a href="index.php?kat=32" >Edukacja</a> </li> <li><a href="index.php?kat=40" >Elektronika</a> </li> <li><a href="index.php?kat=41" >Forum Internetowe</a> </li> <li><a href="index.php?kat=23" >GSM</a> </li> <li><a href="index.php?kat=5" >Hobby</a> </li> <li><a href="index.php?kat=12">Hotele</a>';
nastepnie pisze co sie ma robic:
Kod
$koncowa=preg_replace(
'/<a(.*)?href=(.*)?>(.*)?internet(.*)?<\/a>/ U',
'<a $1 href=$2>$3<font color="red">internet</font>$4</a>', $dane4);
echo($koncowa);
Jeśli na początku stringa tam gdzie jest:
Kod
dfd fgfdg d<a h...
dopisze cokolwiek wtedy wszystko dziala. Jeśli natomiast na końcu stringa tam gdzie jest:
Kod
...t=12">Hotele</a>
dopisze cokolwiek to wtedy juz funkcja przestaje dzialac i wyświetla sie pusty ekran. Ciekawe jest ze nie zwraca zadnego błędu. Wnioskuje z tego ze długość stringa nie ma znaczenia, ale skąd bierze sie ten błąd ?.