witam
na wstępie uprzedzam że jest to pierwszy mój skrypt w php więc mogą i pewnie będą jakieś błędy. Otóż mam klasę książka w której mam dwa pola prywatne w funkcji init() wszystko się ładnie wykonuje, jednak kiedy chcę wyświetlić rekord z tablicy asocjacyjnej(funkcja search) już nie jest tak kolorowo, logi z serwera twierdza że tab jest niezdefiniowaną zmienną.Moje pytanie brzmi,o co chodzi i jak to ew. naprawić.?
class Ksiazka {
private $tab;
private $plik;
public function init() {
$plik = fopen("phone_book.txt", "rw");
if(!$plik) {
print("Nie znalazlem pliku!");
break;
}
while(!feof($plik)) {
$line = fgets($plik);
printf($line."<br>");
$tmp = explode("#", $line);
$tab[$tmp[0]] = $tmp[1];
}
}
public function add($nawisko, $numer) {
$tab[$nazwisko] = $nazwisko;
fputs($plik, $nazwisko."#".$numer);
}
public function search($nazwisko) {
return $tab["kowalski"];
}
public function close() {
fclose($plik);
}
}