Usando magic methods com php
Hora ou outra a gente se depara com algumas funcionalidades que uma linguagem pode nos proporcionar. Às vezes até hesitamos em mudar nossos conceitos, mas é sempre bom tentar enxergar se determinada opção na linguagem vale a pena de ser usada na implementação. O problema é que eu tinha uma classe a fazer, com 50 atributos e estava com uma preguiça danada de escrever todo o código (sei que existem ferramentas que resolvem o caso - http://www.card2u.com.my/ClassBuilder/ ou http://www.phpclasses.org/browse/package/4794.html que geram o código e ainda oferece uma modelagem MVC com suporte à conexão nativa) mas precisava de algo mais “crú”. Então, veja o que os magic methods __get() e __set() fazem por você nessas horas:
Aqui uma classe teste
<? class Class1 { //Lista de atributos private $var1; private $var2; private $var3; /* * Método mágico que retorna os valores das variáveis privadas. * */ public function __get($atributo) { if (isset($this->{$atributo})) { if ($this->{$atributo}) return $this->{$atributo}; } else { return false; } } /* * Método mágico para atribuir valores nas variáveis privadas. * */ public function __set($name, $value) { $this->$name = $value; } } ?>
Testando a classe Class1
<? //Declaração $classe1 = new Class1(); //Atribui 'Valor 1' a $var1 $classe1->var1 = "Valor 1"; //Atribui 'Valor 2' a $var2 $classe1->var2 = "Valor 2"; print $classe1->var1; print $classe1->var2; ?>
Pronto, não precisei me preocupar em escrever getters e setters para os atributos da classe.

JORGE - 4/07/2010 2:46
< blockquote >< a href=”http://pillspot.org/”>PillSpot.org. Canadian Health&Care.No prescription online pharmacy.Best quality drugs.Special Internet Prices. Low price pills. Buy pills online< /a >…
Buy:Buspar.Nymphomax.SleepWell.Zetia.Prozac.Advair.Zocor.Aricept.Seroquel.Wellbutrin SR.Female Pink Viagra.Lipitor.Acomplia.Amoxicillin.Ventolin.Cozaar.Lipothin.Lasix.Benicar.Female Cialis….
JAMES - 15/07/2010 16:25
< blockquote >< a href=”http://pillspot.org/”>PillSpot.org. Canadian Health&Care.Special Internet Prices.No prescription online pharmacy.Best quality drugs. High quality drugs. Buy drugs online< /a >…
Buy:Zetia.Wellbutrin SR.Female Pink Viagra.Prozac.Seroquel.Aricept.Female Cialis.Zocor.Acomplia.SleepWell.Nymphomax.Benicar.Ventolin.Advair.Lasix.Amoxicillin.Lipothin.Lipitor.Buspar.Cozaar….
DOUGLAS - 21/07/2010 5:19
< blockquote >< a href=”http://medicamentspot.com/”>Medicamentspot.com. Canadian Health&Care.No prescription online pharmacy.Special Internet Prices.Best quality drugs. No prescription drugs. Buy drugs online< /a >…
Buy:Levitra.Cialis Soft Tabs.Super Active ED Pack.Cialis Professional.Viagra Soft Tabs.Viagra Professional.Cialis.Zithromax.Soma.Viagra Super Force.Viagra Super Active+.Tramadol.Cialis Super Active+.Maxaman.Propecia.Viagra.VPXL….
DWIGHT - 21/07/2010 16:52
< blockquote >< a href=”http://medicamentspot.com/”>MedicamentSpot.com. Canadian Health&Care.Best quality drugs.No prescription online pharmacy.Special Internet Prices. Low price pills. Order drugs online< /a >…
Buy:Prednisolone.Zyban.Accutane.100% Pure Okinawan Coral Calcium.Actos.Petcam (Metacam) Oral Suspension.Arimidex.Nexium.Lumigan.Mega Hoodia.Retin-A.Prevacid.Synthroid.Zovirax.Valtrex.Human Growth Hormone….