Accedere a tutte le proprietà di un oggetto

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Lo sapevi che con PHP 5.4 puoi accedere praticamente a tutte le proprietà di un oggetto? No? Prova (ma prima ripassati le closures):
PHP:
class Icchisi {
    private $mambanero = "x";
 
    function drinGhede($intercetta) {
        return function() use ($intercetta) {
            return $this->$intercetta;
        };
    }
 
    function dranGhede() {
        return function($intercetta)  {
            return $this->$intercetta;
        };
    }
}
 
$obj = new Icchisi();
$daje = $obj->drinGhede('mambanero');
echo $daje();
$aridaje = $obj->dranGhede();
echo $aridaje('mambanero');
Avete notato che il livello di visibilità di $mambanero è private?
 
Ultima modifica:

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
24
Roma
alessandro1997.netsons.org
L'accento qui va messo sul fatto che in PHP 5.4 le closure possono accedere allo scope della classe in cui vengono definite usando $this (che prima restituiva l'errore "using $this when not in object context").

P.S. Io avrei fatto così anche in PHP 5.4, comunque. :D
PHP:
<?php
class MyClass
{
    private $var = 'foo';
    protected $var2 = 'bar';
    public $var3 = 'baz';

    public function __get($property)
    {
        if (!isset($this->$property)) {
            throw new \ErrorException(sprintf(
                'Undefined property "%s::%s".',
                get_class($this),
                $property
            ));
        }

        return $this->$property;
    }
}

$class = new MyClass();
var_dump($class->var, $class->var2, $class->var3);
?>
 
Discussioni simili
Autore Titolo Forum Risposte Data
Shyson Non mi fa accedere al sito WordPress 12
S Database Netsons: come accedere da remoto PHP 1
I Non riesco ad accedere ftp tramite IP in LAN Reti LAN e Wireless 6
F [PHP] Aggiungere ruolo per accedere alle pagine PHP 2
W accedere a DB Postgres su altro server PHP 2
G accedere a localhost dall'interno di Docker Programmazione 0
AkenStyle Come accedere a una tabella? Database 1
F Quali credenziali per accedere al sitemarket? Supporto Mr.Webmaster 5
L [Javascript] Cliccare su mi piace per accedere a vedere la pagina Javascript 0
A accedere a Json Array multidimensionale jQuery 1
S Poter accedere ad un sito solo se si proviene da un altro preciso WordPress 2
O accedere direttamente a una SUPERGLOBAL PHP 1
felino [Backend] Impossibile accedere al backend WordPress 2
A Impossibile accedere alle configurazioni del router Reti LAN e Wireless 1
M Impossibile accedere a pc su LAN Reti LAN e Wireless 1
Marco_88 Impossibile accedere al database PHP 16
felino Server su macchina linux: come accedere a phpMyAdmin? Apache 1
M Accedere da remoto ad una macchina virtuale Server Dedicati e VPS 2
L accedere alla apgina dopo clic su pagina facebook Javascript 1
Marcolotto Android accedere all'ID UNIVOCO del device Sviluppo app per Android 2
L [VB] Accedere a database access con visual studio (linguaggio vb) .NET Framework 1
N Accedere ai dati di un gruppo con le API di Facebook PHP 0
best impossibile accedere Supporto Mr.Webmaster 4
M Wordpress: password per accedere ad un sito privato WordPress 1
M Accedere PC Privato dall'esterno Reti LAN e Wireless 2
alessandro1997 [TUTORIAL] Accedere ad un server FTP come una normale cartella Linux e Software 1
R codice php per accedere a files protetti .htaccess PHP 2
K AIUTO accedere da remoto server apache in lan Apache 0
Cforever accedere a campi Crystal Reports in .NET ASP.NET 1
N accedere ad un database con asp Classic ASP 1
I Accedere a cartelle protette sul server attraverso internet? Windows e Software 5
P non posso accedere Supporto Mr.Webmaster 6
F Servizi Seo. Visite reali e organiche. tutte visibili su google analytics Annunci servizi di Social Media Marketing 0
G [HTML] Redirect di tutte le pagine di un sito ad una determinata pagina sempre dello stesso HTML e CSS 5
G [PHP] Quali sono tutte le misure di sicurezza che un sito deve avere? PHP 1
R [HTML] Immagini con link, uguali su tutte le pagine del sito HTML e CSS 3
A [PHP] Non prende variabile $provincia ma tutte le altre si PHP 6
Cloud Register.it Partner Prova i VPS Register.it : Il primo mese sconti fino al 50% su tutte le configurazioni Server Dedicati e VPS 0
Bryan [PHP] Far mostrare tutte le tabelle contenenti in un database PHP 2
filomeni Guida Per tutte le attività commerciali NUOVO portale Presenta il tuo Sito 0
S [PHP] Selezionare tutte le colonne meno due PHP 6
A un saluto a tutte/i Presentati al Forum 1
webmachine [PHP] Problema: Stampare tutte le occorrenza di una SELECT PHP 2
gandalf1959 passaggio variabili da form dopo verifiche: tutte meno una!?!? Javascript 4
T creare tutte le varie possibili varianti prodotto MySQL 0
F Decine di visite tutte a 00.00.00 secondi, che visite sono? Google Analytics 2
L Recupero dati da tutte le tabelle nel db MySQL 4
I Consegnare ad un collega un sito con tutte le personalizzazioni? Leggi, Normative e Fisco 3
S login con pagine tutte personalizzate dall' utente loggato PHP 3
I Adattamento di un sito a tutte le piattaforme tramite css HTML e CSS 0

Discussioni simili