对象的调用方法

时间:2012-08-24 20:41:32

标签: php

我正在开发一个涉及制作电子邮件课程的PHP项目。我有一个Java背景,似乎无法弄清楚在对象上调用方法的语法。

我将缩写代码:

文件1:

class Emails {

protected $to;

public function Emails ($_to) {
 //constructor function. 
  $to = $_to;
}

public function getTo () {
  return $to;
}

文件2:

require("../phpFunctions/EmailClass.php");//include the class file
$email = new Emails("<email here>");
echo $email->getTo();//get email and return it

然而,getTo()不返回任何内容,或者,如果我将返回更改为$ this-&gt; $ to,则会收到“空字段”错误。

请帮助我理解方法在这种情况下如何工作(并原谅双关语......)。在Java中,您只需调用email.getTo()...

3 个答案:

答案 0 :(得分:2)

public function __construct ($_to) {
  $this->to = $_to;
}    
public function getTo () {
  return $this->to;
}

答案 1 :(得分:0)

复制和粘贴:

class Emails {

protected $to;

public function __construct($_to) {
 //constructor function. 
  $this->to = $_to;
}

public function getTo () {
  return $this->to;
}

}

使用$this范围将获得在类定义中定义的变量。

答案 2 :(得分:0)

在PHP中,变量不是实例作用域,除非前缀为$this

public function getTo () {
  // $to is scoped to the current function
  return $to;
}

public function getTo () {
  // Get $to scoped to the current instance.
  return $this->to;
}