-> ……なにこれ?
xoops,というか Cubson の前身である exTools/exFrame で初めて php に触れたのですが,まず躓いたのが,
$handler->getObject();
みたいなコードでした。これ何〜? ー>
参考書ひいても,索引に載っていないことが多いんですよ。ググっても出てこないし。いったいどうやって調べれば!? って感じでした。
いろいろ本を読んでいくと,どうやらオブジェクト指向に関係するらしいというのが分かって,そのあとは何とか。
上の例では,「$handler オブジェクトよ,getObject メソッドを実行しなさい」という意味です。
$userid = $user->mId;
だと,「$user オブジェクトの mId プロパティを $userid にセットしなさい」という命令。
似ていますが,-> の後ろに () が付いていればメソッドの実行,付いていなければプロパティへのアクセスを表します。
あと理解するのに時間がかかったのが $this。これはクラスを書くときによく使う変数で,そのクラス自身を表します。
例えば,
class TestEdit() { var $mSum = 0; //TestEdit クラスのメンバプロパティ function calc($a, $b) //TestEdit クラスのメソッド { $this->mSum = $a + $b; } }
といった使い方をします。最初の頃は,なぜ
$mSum = $a + $b;
じゃないのか,とか,
$TestEdit->mSum = $a + $b;
じゃだめ?とか悩んでいました(^ ^;)。