come visualizzare array di oggetti php

lucapelle

Nuovo Utente
29 Nov 2018
8
0
1
Salve sto da poco iniziando a programmare in php, volevo sapere data una classe persona con attributi : nome, cognome ed età come riuscirli a visualizzare in una tabella
 
Ciao Luca,
una volta inizializzato l'oggetto puoi visualizzare gli attributi in questo modo:

Codice:
<table>
<tr><td><?php echo $this->nome; ?></td></tr>
<tr><td><?php echo $this->cognome; ?></td></tr>
<tr><td><?php echo $this->eta; ?></td></tr>
</table>

in cui $this si riferisce all'oggetto corrente
 
PHP:
class Persona
{
      //attributi
      public $nome;
      public $cognome;
      public $eta;
  
      //costruttore
      public function __construct($nome,$cognome,$eta){
      $this -> nome = $nome;
      $this -> cognome = $cognome;
      $this -> eta = $eta;
      }
  
      //metodi GET e SET
      public function getNome()
      {
           return $this->nome;
      }
  
      public function getCognome()
      {
           return $this->cognome;
      }
    
      public function getEta()
      {
           return $this->eta;
      }
  
      public function setNome($nome) {
        $this->nome = $nome;
    }
 
    public function setCognome($cognome) {
            $this->cognome = $cognome;
        }
 
    public function setEta($eta) {
            $this->eta = $eta;
        }   
        }
/* chiusura tag PHP */
?>
 
Ultima modifica di un moderatore:
PHP:
<html>
<head><title></title></head>
<body> <h2>Persone</h2>
<?php

$utente = new Persona("giovanni"," asfsadsf"," 40");
print($utente->getNome());
print($utente->getCognome());
print($utente->getEta());


//$utenti = array($utente);

//foreach($utenti as $valore){
  //print ($valore->getNome());
//}
?>

</body>
</html>
 
Ultima modifica di un moderatore:
il fatto è che non riesco ad aggiungere piu persone perche mi da errore, e non ho capito come inserirli in un array
 
giusto un esempio semplice,
PHP:
<?php
class Persona
{
    // attributi
    public $nome;
    public $cognome;
    public $eta;

    //costruttore
    public function __construct($nome,$cognome,$eta)
    {
        $this->nome    = $nome;
        $this->cognome = $cognome;
        $this->eta     = $eta;
    }

    public function rigaTitolo()
    {
        return
            "<tr><td>Nome</td>"
           ."<td>Cognome</td>"
           ."<td>Eta</td></tr>";
    }

    public function rigaUtente($u)
    {
        return
            "<tr><td>".$u->nome   ."</td>"
               ."<td>".$u->cognome."</td>"
               ."<td>".$u->eta    ."</td></tr>";
    }
}


$utenti = array();

//echo "<table>";

$utente = new Persona("aldo","qwerty","40");
$utenti[] = $utente;
//echo $utente->rigaUtente($utente);

$utente = new Persona("giovanni","asdfgh","50");
$utenti[] = $utente;
//echo $utente->rigaUtente($utente);

$utente = new Persona("giacomo","zxcvbn","60");
$utenti[] = $utente;
//echo $utente->rigaUtente($utente);

//echo "</table>";


echo "<table>".$utente->rigaTitolo();

foreach($utenti as $utente)
{
    echo $utente->rigaUtente($utente);
}

echo "</table>";
?>

con questo risultato
upload_2018-11-29_20-10-9.png
 
  • Like
Reactions: lucapelle
@lucapelle
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code.gif
quando posti del codice, o il tag
php.png
per il codice PHP, oppure la funzione codice dalla barra degli strumenti
box inserisci 2.png.JPG

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 
  • Like
Reactions: lucapelle

Discussioni simili