不知道为什么我的功能不起作用

时间:2014-05-13 22:17:07

标签: php class methods

我是php新手,我正在尝试使用函数和类。我不知道为什么我不能得到get和set方法来实现。如果你能看一眼,让我知道我的错误在哪里,我会很感激。

非常感谢:

<?php
class fileHandling
{
function __construct(){}

public $FName="red";
public function setFName($FName){$this->FName = $FName;}
public function getFName(){if($FName == null) return "";else return $FName;}

function toString(){return "file name: ".$this->getFName();}
}


$fh = new fileHandling();
echo($fh->toString()."<br>");
$fh->setFName("purple"."<br>");
echo("color is: ".$fh->Fname."<br>");
echo($fh->getFName());
$fh->setFName("orange"."<br>");
echo("color is: ".$fh->Fname."<br>");
echo($fh->getFName());
echo($fh->toString());
?>

3 个答案:

答案 0 :(得分:2)

getFName缺少$this

public function getFName(){
  if($this->FName == null) return "";
  else return $this->FName;
}

答案 1 :(得分:2)

public function getFName(){if($this->FName == null) return "";else return $this->FName;}

所有事情都很好,但你应该用$FName替换$this->FName

答案 2 :(得分:1)

这里有一些问题:

  • FName!== Fname:所以$fh->Fname应为$fh->FName;
  • 在您的getter方法中,您需要$this->FName而不是$FName