Salve a tuttidifficilmente mi sono trovato a dover usare la programmazione ad oggetti in php...
Oggi pero' mi volevo scrivere una classettina di comodo per interagire col mysql in modo pulito e veloce...
Vado a leggermi il manuale di riferimento e trovo scritto:
In pratica, mi dice... non inizializzare le variabili dato all'interno della classe, fallo solo se si tratta di costanti, per inizializzarle usa il costruttore della classe...codice:<?php class Cart { /* questo non funziona in PHP 4. */ var $todays_date = date("Y-m-d"); var $name = $firstname; var $owner = 'Fred ' . 'Jones'; /* E' permesso l'uso di matrici contenenti costanti */ var $items = array("VCR", "TV"); } /* Questo è corretto. */ class Cart { var $todays_date; var $name; var $owner; var $items; var $items = array("VCR", "TV"); function Cart() { $this->todays_date = date("Y-m-d"); $this->name = $GLOBALS['firstname']; /* etc ... */ } } ?>
Tuttavia ho fatto delle prove e ho visto script anche molto seri programmati fregandosene di questa regola e inizializzando i valori direttamente nella definizione addirittura senza l'utilizzo del costruttore...
Il manuale in questo senso riporta un qualcosa di obsoleto? non si usa + l'inizializzazione mediante costruttore da tempo? se non inzializzo mediante costruttore posso andare in grossi problemi di incompatibilita'?
Ok... poi se potete ricordatemi un'altra cosa... il distruttore va dichiarato e deve contenere tutti i vari unset delle variabili dato allocate oppure se non lo metto al momento della distruzione dell'oggetto tutta la memoria delle variabili dato viene pulita senza problemi?
Thank You![]()


difficilmente mi sono trovato a dover usare la programmazione ad oggetti in php...
Rispondi quotando