如何从对象中访问实例属性?

时间:2017-08-14 20:28:43

标签: php class constructor

我正在尝试实例化将类参数传递给构造函数的PHP类,但是当我打印数据时,值为空。

传递给configuracaoBancoDados.php的POST数据没有问题但是当我从BancoDados class创建BancoDadosClass.php时,将参数传递给构造函数并尝试使用{打印此参数{1}}所有数据都是空的。

configuracaoBancoDados.php

voltaValor() method

BancoDadosClass.php

<?php

include("../../../classes/BancoDadosClass.php");

if(isset($_POST["acao"]) && $_POST["acao"] == "criarBancoDados") {
  $host = $_POST["enderecoServidor"];
  $nomeBD = $_POST["nomeBD"];
  $prefixoTabelasBD = $_POST["prefixoTabelasBD"];
  $usuarioBD = $_POST["usuarioBD"];
  $senhaBD = $_POST["senhaBD"];

  $bancoDados = new BancoDados($host, $usuario, $senhaBD, $nomeBD, $prefixoTabelas);

  echo $bancoDados->voltaValor();

} else {
  echo "Ação não definida";
}

?>

enter image description here

1 个答案:

答案 0 :(得分:3)

你必须像这样打印

function voltaValor() 
{
    return "Dados: " . $this->host . " " . $this->nomeBancoDados . " " . $this->prefixoTabelas . " " . $this->usuario . " " . $this->senha;
}

要从对象范围内访问对象的实例属性,您需要使用$this->whateverTheNameOfTheVariable

供参考,见: