Help Sintx error

Asked

Viewed 31 times

0

I would like to know where is my mistake in this class in php, If anyone can help I thank you, the mistake is this:

Parse error: syntax error, Unexpected '$_POST' (T_VARIABLE) in C: wamp www exercicio1 class Function.class.php on line 4

class Pessoa{

    var $codigo = $_POST["codigo"];
    var $nome = $_POST["nome"];
    var $altura = $_POST["altura"];
    var $idade = $_POST["idade"];
    var $dt_nasc = $_POST["dt_nasc"];
    var $escol = $_POST["escol"];
    var $salario = $_POST["salario"];

    function crescer($centimetros){
    $this->altura+=$centimetros;

    }

    function formar($titulo){
    &this->idade+=$anos;



    }

    function envelhecer($anos){
    $this->idade+=$anos;

    }

}

2 answers

1

The error is in $_POST, cannot start class attribute values this way.

The idea is to create a constructor by receiving the parameter.

class Pessoa{

    var $codigo;
    var $nome;
    var $altura;
    var $idade;
    var $dt_nasc;
    var $escol;
    var $salario;

    function __construct($POST){
        $this->codigo = $POST['codigo'];
        //.. aqui você inicializa todos os parametros
    }

    function crescer($centimetros){
        $this->altura+=$centimetros;
    }

    function formar($titulo){
        $this->idade+=$anos;
    }

    function envelhecer($anos){
        $this->idade+=$anos;
    }

}

$Pessoa = new Pessoa($_POST);

And on the line &this->idade+=$anos; instead of $ you put &

0

You can not do this type initialization in the property, if you need to define a dynamic default value I do in the constructor.

Replace the var that was used in php4 by one of three available visibility, public, protected and private.

class Pessoa{

public function __construct($info){
    $this->codigo = $info["codigo"];
    $this->nome = $info["nome"];
    $this->altura = $info["altura"];
    $this->idade = $info["idade"];
    $this->dt_nasc = $info["dt_nasc"];
    $this->escol = $info["escol"];
    $this->salario = $info["salario"];
}

//demais métodos.

Manual - visibility

Browser other questions tagged

You are not signed in. Login or sign up in order to post.