• ベストアンサー

PHP初心者です。

PHP初心者です。 PHP5を使っているのでオブジェクト指向で開発してみようと 見つけたサンプルを動かしているところですが、下記のエラー が発生します。 Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE in C:\inetp ub\boxing\Boxing.php on line 16 以下ソースです。 全角スペースが入ると上記に類似のエラーが発生したことがあるので、その点はチェックしたのですが… 何かお気づきの点があればご指摘いただけると嬉しいです。 よろしくお願いします。 <? interface Boxer { public function punch(); } class Fighter implements Boxer { public function punch() { echo "猫パンチ"; } } class Boxing { private Boxer $fighter; public function setFighter( Boxer $fighter ) { $this->fighter = $fighter; } public function play() { $this->fighter->punch(); } } $boxer = new Fighter; $boxing = new Boxing; $boxing->setFighter( $boxer ); //猫パンチと表示 $boxing->play(); ?>

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

himajin100000さんが疑問に思ったとおりで、PHPはメンバ変数に型指定できません。 Boxingクラスの private Boxer $fighter; を private $fighter; に変更すると動くようになるようです。

kahotaka
質問者

お礼

ご指摘ありがとうございます! 丁寧に変更箇所まで書いていただき感謝です♪ アドバイス通り変更して動きました!! PHPではメンバ変数に型指定できないのですね! 今後気をつけます! メソッドの引数には型指定OKなのですね(^_^;) ありがとうございました。

その他の回答 (1)

回答No.1

PHPのメンバ変数って型指定できるの?

kahotaka
質問者

お礼

ご指摘ありがとうございます! メンバ変数の型指定をとったらいけました。 ありがとうございました。

関連するQ&A

専門家に質問してみよう