Nie, takto konkrétne to nejde, pretože nemôžeš priraďovať vlastnostiam dynamickú hodnotu (u teba výsledok funkcie). Čo sa ale dá, je presunúť priradenie do konštruktora, niečo takéto...:
Kód:
class Name
{
public $title;
public function __construct()
{
$this->title = $this->vars(1);
}
public function vars($id)
{
$q = $this->select('settings', 'value', 'id', $id);
$r = mysql_fetch_assoc($q);
return $r['value'];
}
}
Prípadne možno lepší prístup so zapuzdrením:
Kód:
class Name
{
private $title;
private function vars($id)
{
$q = $this->select('settings', 'value', 'id', $id);
$r = mysql_fetch_assoc($q);
return $r['value'];
}
public function getTitle()
{
if ($this->title == null) $this->title = $this->vars(1);
return $this->title;
}
}
A podobne. Tento druhý príklad ukazuje v podstate "lazy" načítanie, čiže sa nič nebude diať, ak title nebudeš potrebovať. Ak budeš, pri prvom požiadavku sa hodnota získa a potom sa už len využíva...
Záleží to od toho, čo a ako vlastne potrebuješ. Hádam som ťa aspoň trochu nakopol