2010-12-20 11 views
1

私は学習しているスクリプトに以下のコードを書いています。変数をエコーし​​たりプリントしたりしてみましたが、それは配列だと思っていましたが、明らかに動作しません。

完全なコードは、クラスという致命的なエラーを戻しながら、私は、エコーや印刷変数$ Iを、それが配列であるかもしれないが、それは動作しません考えて試してみましたが、この

$i = new b(); 

$i->c = "d"; 
$i->e = "f"; 
$i->g = "h"; 
$i->j = "k"; 
$i->l = "m"; 

のようなものです'b'は見つかりませんでした。

+0

HTTP ://www.php.net/ma nual/en/language.oop5.php –

+0

関連:http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in-php – deceze

+1

+1興味深い質問ではありませんが、よく記述された学習者の質問と、あなた自身を解決しようとする試みがなされている。しかし、 'echo'がエラーにつながるか、出力がないときに 'var_dump($ i)'や 'print_r()'を試してみてください。 – mario

答えて

3

new b()部分は、クラスbの新しいインスタンスを作成します。 bという名前のクラスがソースコードのどこかで定義されていれば、配列ではなくオブジェクトになります。他の行は、そのオブジェクトのプロパティにいくつかの文字列を割り当てます。

オブジェクト指向プログラミングの詳細については、PHP in the manualを参照してください。

var_dumpの機能は将来的に役立つことがあります。

+0

ありがとう、私はvar_dump関数をチェックアウトします。 –

2

このコードは、(明らかに存在しない)クラスbから新しいオブジェクト$iをインスタンス化し、いくつかのオブジェクトプロパティを設定します。

詳しくはintroduction to Object Oriented Programmingをお読みください。

1
  • $i = new b();        クラスからb
  • $i->c = "d";              文字列値Cを割り当てオブジェクト$iのメンバーを$iという名前の新しいオブジェクトをインスタンス化し、 "d"
関連する問題