salve a tutti,
mi sono sempre chiesto che differenza ci sia tra l'operatore $this e $self...
ho cercato sia nel forum che nella sezione del sito dedicata a php ma non ho trovato nulla....
quindi chiedo a voi


sempre riferito a questa domanda avrei un altro quesito.
ho una classe tra le cui proprietà ho inserito un oggetto DOMDocument caricato con l'xml opportuno...
la maggior parte dei metodi di questa classe agisce su questo oggetto e per evitare che questo debba essere ogni volta ricreato ho pensato di realizzare una variante del pattern Singleton... in parole povere l'istanza DOM viene creata una volta sola e poi ne viene restituita una copia a ciascuna metodo che la richiede.
La variante rispetto al classico Singleton è che questa istanza non è valida per l'intera applicazione ma solo all'interno della classe stessa....
per far ciò ho creato questa varibile in modo non statico.
ecco il codice che la gestisce:

codice:
             protected $objXML=null;

	protected function loadObjXML(){
		if($self->objXML == null){	
			$self->objXML=new DOMDocument();
			$self->objXML->loadXML($this->xml);
		}
		return $self->objXML;
	}
e così funziona alla perfezione... ma la mia domanda è:
perchè se al posto di $self uso $this invece non funziona???

grazie mille
citrus