Witam,
Mam taki schematyczny kod:
[php:1:9f49206d3f]<?php
class KlasaPierwsza
{
var $wartosc;
function modyfikujWartosc($wartosc) {
$this->wartosc = $wartosc;
}
}
class KlasaDruga
{
function WywolajModyfikacjeWartosci($KlasaPierwsza) {
$KlasaPierwsza->modyfikujWartosc('zmodyfikowana');
}
}
$KlasaPierwsza = new KlasaPierwsza;
$KlasaDruga = new KlasaDruga;
$KlasaDruga->WywolajModyfikacjeWartosci($KlasaPierwsza);
// wyswietl zmodyfikowna wartosc z klasy Pierwszej
echo $KlasaPierwsza->wartosc;
?>
[/php:1:9f49206d3f]
Jednak nie dziala on jak nalezy. W rezultacie nie otrzymuje zadnych bledow ale tez tego czego oczekuje - czyli wartosci $wartosc z klasy KlasaPierwsza. Prosze o przeanalizowania kodu i powiedzenie mi co robie zle. Chcialbym z jednej klasy (KlasaDruga) poprzez wywolanie funkcji modyfikujWartosc z drujgiej klasy (KlasaPierwsza) zmodyfikowac wlasciwosc tej klasy (KlasaPierwsza).
Nie wiem czy przekazywanie obiektu poprzez ladowanie do funkcji jest odpowiednie... (przekazywanie obiektu klasy poprzez argument)
Zalezy mi tez na tym zebym do wartosci odwolywal sie poprzez klase w ktorej wartosc zostala zmienion czyli KlasaPierwsza.
Wiem ze moglbym stworzyc w KlasaDruga obiekt klasypierwszej ale szukam innego rozwiazania.
W kazdym badz razie glowie sie nad tym juz dopre dwa dni i nie znalazlem rozwiazania.
Pozdrawiam