Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Referecja do metody.
Forum PHP.pl > Forum > PHP
e-Gandalf
Czy da sie w php 5 przekazac jakos referencje do metody? Mam klase, ktorej jedna z metod zwraca nowy obiekt innej klasy... I teraz chcialbym, aby ten nowy obiekt mogl w swoich metodachuzywac prywatnych metod tej pierwszej klasy. Na zasadzie:

[php:1:e1eef4e580]<?php
class SqlService {
private $link = null
public function &createQuery () {
return new SqlQuery($this->link);
}

private execute (&$query) {
mysql_query($query);
}
}

class SqlQuery {
private $link = null;
function __construct (&$link) {
$this->link = &$link;
}

public function run () {
// i tutaj tak jak moge uzywac this->link ktory jest referencja do private link obiektu klasy SqlService
// chcialbym moc sie odniesc do metody execute()
}
}
?>[/php:1:e1eef4e580]

da sie jakos?
Seth
Z tego co wiem to w zadnej wersji php nie dalo sie tego zrobic i nadal sie nie da.



_____

php Pro => php
e-Gandalf
Ze w zadnej to wiem, ale myslalem, ze w 5... heh, szkoda sad.gif
DeyV
wiec po co deklarujesz zmienną jako private, jeśli chcesz z niej korzystać poublicznie?
e-Gandalf
Nie chce! Chce zeby tylko obiekt klasy SqlQuery mogl lokalnie korzystac z metody obiektu klasy SqlService. Natomiast zeby programista nie mogl wykorzystac tej metody "zewnetrznie".
Seth
to daj protected i rozszez klase SqlQuery o SqlService
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.