Attenzione |
Questo modulo è SPERIMENTALE. Ovvero, il comportamento di queste funzioni, i nomi di queste funzioni, in definitiva tutto ciò che è documentato qui può cambiare nei futuri rilasci del PHP senza preavviso. Siete avvisati, l'uso di questo modulo è a vostro rischio. |
Lo scopo di questa estensione è di permettere l'overloading delle proprietà di accesso agli oggetti e dei metodi di chiamata. Solo una funzione è definita in questa estensione, overload() che prende il nome dalla classe che ha questa funzionalità abilitata. La classe nominata ha da definire metodi appropriati se vuole avere questa funzionalità: __get(), __set() and __call() rispettivamente per ricevere/impostare una proprietà, o chiamare un metodo. Questa strada del sovraccarico può essere selettiva. Dentro queste funzioni handler l'overloading è disabilitato così si può accedere alle proprietà dell'oggetto normalmente.
Alcuni semplici esempi sull'uso della funzione overload()
Attenzione |
Siccome è una estensione sperimentale, non tutto funziona. Non c'è attualmente il supporto per __call(), puoi solo overloadare le operazioni di ricezione e di impostazione per le proprietà. Non puoi invocare l'overloading handlers originale della classe, e __set() funziona solo su un livello di proprietà di accesso. |