none
duda herencia en php RRS feed

  • Pregunta

  • Hola

    Tengo el codigo que os paso a continuación, lo que pretendo es poder inicializar un objeto con una clase que a su vez hereda de otra, pero el atributo de gagos es un array y no consigo que se almacenen los datos y visualizarlos

    Agradezco la ayuda

     <?php
            //Clase Vecino
            class Vecino{
                public $nombre;
                public $numero;
                //constructor
                function __construct($nombre, $numero) {
                    $this->nombre = $nombre;
                    $this->numero = $numero;
                }
                public function getNombre() {
                    return $this->nombre;
                }
                public function setNombre($nombre) {
                    $this->nombre = $nombre;
                }
                public function getNumero() {
                    return $this->numero;
                }
                public function setNumero($numero) {
                    $this->numero = $numero;
                }
            }//fin vecino
            //Clase Propietario que hereda de Vecino, ademas atributo pagos
            class Propietario extends Vecino{
                public $pagos=array();
                //var $pagos=["1"=>100,"2"=>200];
            function __construct($pagos) {
                $this->pagos = $pagos;
            }
                
            public function getPagos() {
            return $this->pagos;
            }
            public function setPagos($pagos) {
            $this->pagos = $pagos;
            }
            //funcion añadir pagos
            public function anadirPagos($pago){
                //$this->pagos=$pago;
                $pagos_push=$pago;
            }
            }//fin propietario
            $pepe=new Propietario(0);
            $pepe->setNombre("Pepe");
            $pepe->setNumero("42");
            echo $pepe->getNombre();
            echo "<br>";
            echo $pepe->getPagos();
            echo "<br>";
            echo "Hago un pago de 100";
            echo "<br>";
            $pepe->anadirPagos(100);
            echo "<br>";
            echo "Visualizo los pagos";
            echo "<br>";
            print_r($pepe->pagos);
            echo "<br>";
            echo "Hago unn pago de 500 y los muestro";
            $pepe->anadirPagos(500);
            echo "<br>";
            echo $pepe->pagos[0];
            echo $pepe->pagos[1];
            ?> 
    domingo, 15 de marzo de 2020 19:43