Igualmente uniendo lo anterior que había separado con las nuevas llamadas utilizando return me sigue sin coger el último valor de "subir_pasajeros" y me deja libre el estado por segunda vez:
Código PHP:
<?php
class Taxi {
var $estado;
var $pasajeros;
var $subir_pasajeros;
function estado($pasajeros=0) { // Esto se ejecutará al instanciar la clase
if ($pasajeros<=0){
return $this->estado = "libre <br />";
$this->subir_pasajeros = $pasajeros;
}
elseif ($pasajeros>0){
return $this->estado = "ocupado <br />";
$this->subir_pasajeros = $pasajeros;
}
}
function subir_pasajeros() {
if ($pasajeros<=0){
return $this->estado = "libre <br />";
$this->subir_pasajeros = $pasajeros;
}
elseif ($pasajeros>0){
return $this->estado = "ocupado <br />";
$this->subir_pasajeros = $pasajeros;
}
}
}
$taxi = new Taxi();
echo $taxi->estado(); // Mostrará "libre"
$taxi->subir_pasajeros(3); // Suben 3 pasajeros al taxi
echo $taxi->estado(); // Mostrará "ocupado"*/
?>
¿Sigo teniendo mal los parámetros?