Cytat(bastard13 @ 9.05.2012, 08:05:01 )

Po pierwsze Twoja zmienna powinna być prywatna (http://bit.ly/IBVfCS). Jeżeli jest publiczna, to nie potrzebna Ci żadna metoda do pobierania jej:P
A co do wyciągania pojedynczej wartości to rozwiązanie, które podał Ci markonix jest idealne rzn. przekazywanie klucza jako parametru. Może być opcjonalny i w przypadku jego braku zwracasz całą tablicę:
public function zwroc($key = null)
{
return $this->zmienna;
throw new OutOfRangeException('key doesn\'t exists.');
return $this->zmienna[$key];
}
<?php
{
private $file;
public function __construct()
{
$this->read();
}
private function read()
{
{
$file = file('wpisy.txt'); //echo $file[0];
$this->getContent(0);
}
}
public function getContent($key = null)
{
return $this->file;
throw new OutOfRangeException('Key doesn\'n exist.');
return $this->file[$key];
}
}
?>
Zwraca mi 2 błędy:
Kod
Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in C:\AppServ\www\PHP\Guest book\ReadFile.class.php on line 27
Fatal error: Uncaught exception 'OutOfRangeException' with message 'Key doesn'n exist.' in C:\AppServ\www\PHP\Guest book\ReadFile.class.php:28 Stack trace: #0 C:\AppServ\www\PHP\Guest book\ReadFile.class.php(18): ReadFile->getContent(0) #1 C:\AppServ\www\PHP\Guest book\ReadFile.class.php(9): ReadFile->read() #2 C:\AppServ\www\PHP\Guest book\index.php(13): ReadFile->__construct() #3 {main} thrown in C:\AppServ\www\PHP\Guest book\ReadFile.class.php on line 28
Do drugiego błędu chyba muszę zrobić klasę, która to wychwyci czy coś ?
Dodam, że array mam w postaci array('wpis1', 'wpis2'), a na przykładach z manuala widzę tablicę asocjacyjną
Edit:
Wyczytałem, że to nie typ tablicy, ale dalej nie wiem czemu nie działa...
Edit2:
Panika paniką, błąd znaleziony

$file = file('wpisy.txt'); ---> $this->file...
------------------------------------------------------------------------------------------------------
Cytat(hind @ 9.05.2012, 08:29:40 )

nie polecam tego rozwiązania powyrzszego...
osobiście zrobił bym 2 metody zwroc() i zwrocWartosc($klucz=null). Dzięki temu masz jakąś tam przewidywalność zwracanych danych (przypadkowe podanie $klucz = null spowoduje zrócenie nieporządanych danych)
2 metody skoro powyższe właśnie chyba ma sprawdzać kiedy klucz jest podany to zwraca dany key, a jeśli go nie ma to chyba ma zwrócić całą tablicę ?