日本PHPユーザ会 掲示板

日本PHPユーザ会運営の掲示板です。※ただいまテスト運用中です。

日本PHPユーザ会 掲示板 » PHP事はじめ » コンストラクタの引数に値を渡らず、値の表示が出来ない

コンストラクタの引数に値を渡らず、値の表示が出来ない

ページ: 1

投稿者 投稿
会員
登録者: 3 2009
返信数: 10
『class Game』から『class GameMaker』へ継承したいのですが、コンストラクタの引数に値を渡す事ができず、ブラウザに値が表示が出来ません。
次の内容を実行しましたら、
『DSLiteのゲーム機のメーカーはで、値段はです。
プレイステーション3のゲーム機のメーカーはで、値段はです。
サターンのゲーム機のメーカーはで、値段はです。』
となります。どこが間違っているのかわかりません。よろしくお願いします。

<?php
class Game
{
public $name;
public $price;
}
class GameMaker extends Game
{
public $maker;
public function printMaker()
{
print $this->name."のゲーム機のメーカーは".$maker."で、値段は".$price."です。<BR>";
}
public function __construct($nm,$nd,$mk)
{
$this->name=$nm;
$this->price=$nd;
$this->maker=$mk;
}
}
$DSLite = new GameMaker("DSLite","25000円","任天堂");
$PlayStation3 = new GameMaker("プレイステーション3","58000円","ソニー");
$SegaSatern = new GameMaker("サターン","10000円","セガ");
$DSLite -> printMaker();
$PlayStation3 -> printMaker();
$SegaSatern -> printMaker();
?>
会員
登録者: 3 2009
返信数: 1
すみません。
初心者なので間違っているかもしれませんが...

値を渡すことは出来ているが、値にアクセスする事ができないのだと思います。
$makerと$priceもそれぞれ$this->maker、$this->priceとしてはいかがでしょうか?

参考:
http://www.sasaraan.net/program/php/found.php?page=9
管理者
登録者: 10 2005
返信数: 7
naco氏がおっしゃっているように,


print $this->name."のゲーム機のメーカーは".$maker."で、値段は".$price."です。<BR>";





print $this->name."のゲーム機のメーカーは".$this->maker."で、値段は".$this->price."です。<BR>";


に変更してみてください.

ページ: 1

日本PHPユーザ会 掲示板 » PHP事はじめ » コンストラクタの引数に値を渡らず、値の表示が出来ない

日本PHPユーザ会 掲示板 は UseBB 1 フォーラムソフトウェア を使用しています