Teraz mam inny problem z tą funkcją, a mianowicie przy jej wykonywaniu do pliku error.log zapisuje się dużo ostrzeżeń takich jak np.
[Thu Feb 13 13:34:23 2014] [error] [client 127.0.0.1] PHP Notice: Uninitialized string offset: 129 in /var/www/programowanie/wyszukiwanie.php on line 52, referer: http://127.0.0.1/programowan
[Thu Feb 13 13:34:23 2014] [error] [client 127.0.0.1] PHP Notice: Uninitialized string offset: 129 in /var/www/programowanie/wyszukiwanie.php on line 52, referer: http://127.0.0.1/programowan
[Thu Feb 13 13:34:23 2014] [error] [client 127.0.0.1] PHP Notice: Uninitialized string offset: 129 in /var/www/programowanie/wyszukiwanie.php on line 52, referer: http://127.0.0.1/programowan
[Thu Feb 13 13:34:23 2014] [error] [client 127.0.0.1] PHP Notice: Uninitialized string offset: 129 in /var/www/programowanie/wyszukiwanie.php on line 52, referer: http://127.0.0.1/programowan
[Thu Feb 13 13:34:23 2014] [error] [client 127.0.0.1] PHP Notice: Uninitialized string offset: 129 in /var/www/programowanie/wyszukiwanie.php on line 52, referer: http://127.0.0.1/programowan
[Thu Feb 13 13:34:23 2014] [error] [client 127.0.0.1] PHP Notice: Uninitialized string offset: 129 in /var/www/programowanie/wyszukiwanie.php on line 55, referer: http://127.0.0
funkcja wygląda tak
function podziel($text) {
$j = 0;
$text2 = "";
$ogranicznik = strlen($text);
//print $ogranicznik;
for($i=0;$ogranicznik >= $i;$i++) {
if ( $text[$i] == " " or $text[$i] == "(" or $text[$i] == ")" or $text[$i] == "," or $text[$i] == ".") {
$j++;
$i++;
while( ($text[$i] == " " or $text[$i] == "(" or $text[$i] == ")" or $text[$i] == "," or $text[$i] == ".") ) ++$i;
}
$text2[$j] .= $text[$i];
}
return $text2;
}
A ostrzeżenie dotyczy pętli
while( ($text[$i] == " " or $text[$i] == "(" or $text[$i] == ")" or $text[$i] == "," or $text[$i] == ".") ) ++$i;
Nie było by nic złego w tym, ale plik error.log po wykonaniu tego skryptu ma bardzo dużą wielkość.