Php OOP:父类值始终为null

时间:2017-05-06 11:49:00

标签: php oop

我在两个单独的文件中有两个php类:

文件名:ld.php

<?php
  class LandDetail_Model{
     public function __construct() {}
     private $id;
     public $pId;
     private $bigha;
     private $katha;

function setId($id) { $this->id = $id; }
function getId() { return $this->id; }
function setPId($pId) { $this->pId = $pId; }
function getPId() { return $this->pId; }
function setBigha($bigha) { $this->bigha = $bigha; }
function getBigha() { return $this->bigha; }
function setKatha($katha) { $this->katha = $katha; }
?>

文件名:Land_Detail.php

<?php
    require_once '../models/ld.php';

    class LandDetail extends LandDetail_Model{
      public function __construct() {
            parent::__construct();
     }

  public function DoSomething(){
     echo "This is a value from Parent".$this->getPId();
  }
}
?>

现在在SomeFile.php我正在做这样的事情。

<?php
include 'Land_Detail.php';

$ld = new LandDetail();
$ld->setPId(10001);
$ld->DoSomething();

?>

为什么$this->getPId()总是返回空值?这里的代码出了什么问题?从不同文件扩展php中的类的正确方法是什么?

1 个答案:

答案 0 :(得分:4)

你为什么写:

$ld->setPId = 10001;

而不是

$ld->setPId(10001);