1

私は次のプログラムを持っています

class Person {
  var $name;
  function Person () {

  }
}

$fred = new Person;
$fred->name = "Fred";
$barney =& new Person;
$barney->name = "Barney";

echo $barney->name;
echo $fred->name;

両方のechoステートメントは、正しい同じ出力、つまり「Fred」と「Barney」を提供します。したがって、$ barneyを宣言するときに&を使用するとどうなりますか。ここで「&」とは何を指しますか?

ありがとう

4

3 に答える 3

2

PHP4での参照(http://www.php.net/manual/en/oop4.newref.php

「参照による」という意味です。(さらに読む)のコピーではなく、同義語になります。また、コンストラクターを作成する新しい方法は、クラス自体と同じ名前を使用するのではなく、次の__construct()関数を使用することです。

class Person {

  function __construct() {
    // setup shop
  }

}

また、特定のメソッドとプロパティを「public」、「private」、「protected」などとして割り当てて、Visiblityを適切に使用してください。

于 2009-12-23T19:16:35.473 に答える
2

変数を参照として渡しますが、これはPHP5+では不要になりました。

于 2009-12-23T19:18:39.647 に答える
0

PHPマニュアルで説明されているリファレンスを参照してください。

まだPHP4を使用している特別な理由はありますか?これはサポートされなくなり、PHP5sOOPははるかに堅牢で機能が強化されています。

于 2009-12-23T19:24:10.677 に答える