1

私は電子メールクラスの作成を含む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-> $ toに変更すると、「空のフィールド」エラーが発生します。

この場合にメソッドがどのように機能するかを理解するのを手伝ってください(そしてしゃれを許してください...)。Javaでは、email.getTo()...を呼び出すだけです。

4

3 に答える 3

2
public function __construct ($_to) {
  $this->to = $_to;
}    
public function getTo () {
  return $this->to;
}
于 2012-08-24T20:42:58.000 に答える
0

日本酒のコピー&ペーストの場合:

class Emails {

protected $to;

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

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

}

スコープを使用$thisすると、クラス定義内で定義された変数が取得されます。

于 2012-08-24T20:45:19.833 に答える
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;
}
于 2012-08-24T20:45:27.723 に答える