PHP Refactoring – Lez. 2: proprietà array di una classe
|
class Classe { private $alunni; public function addAlunni($valore, $chiave=null) { if (is_array($valore)) { foreach($valore as $posizione => $elemento){ if ($chiave!=null) { $this->alunni[$posizione] = $elemento; } else { $this->alunni[] = $elemento; } } } else if ($chiave == null) { $this->alunni[] = $valore; } else { $this->alunni[$chiave] = $valore; } }
public function removeAlunni($chiave=null) { if (is_array($chiave)) { foreach($chiave as $posizione=> $valore){ unset($this->alunni[$valore]); } } else if ($chiave == null) { $this->alunni = array(); } else { unset($this->alunni[$chiave]); } }
public function getAlunni($chiave=null) { if (is_array($chiave)) { $elementi = array(); foreach($chiave as $posizione=> $valore){ $elementi[$valore] = $this->alunni[$valore]; } return $elementi; } else if ($chiave == null) { return $this->alunni; } return $this->alunni[$chiave]; } } $objClasse = new Classe(); $objClasse->addAlunni(”paolo”, “rossi”); $objClasse->addAlunni(array(”giuseppe”,”francesco”)); $objClasse->addAlunni(array(”verdi”=>”giuseppe”, “gigli”=>”francesco”), “chiavi”); echo “recupero il valore con chiave ROSSI <br />”; echo $objClasse->addAlunni(”rossi”); echo “recupero i valori con chiave VERDI e ROSSI<br />”; print_r($objClasse->getAlunni(array(”verdi”,”rossi”))); echo “recupero tutta la proprietà ALUNNI<br />”; print_r($objClasse->getAlunni()); echo “rimuovo il valore con chiave ROSSI <br />”; $objClasse->removeAlunni(”rossi”); print_r($objClasse->getAlunni()); echo “rimuovo i valori con chiave ROSSI e VERDI<br />”; $objClasse->removeAlunni(array(”verdi”,”rossi”)); print_r($objClasse->getAlunni()); echo “resetto la proprietà ALUNNI<br />”; $objClasse->removeAlunni(); print_r($objClasse->getAlunni()); |
E anche per oggi è tutto; alla prossima e buona programmazione a tutti.





Loading ...





Commenti recenti