我希望标题有意义,我正在学习使用 PHP 类并且我理解得很好,我试图超越我已经阅读/观看的教程并使用数组来返回值。
我纯粹只是在试验,想知道为什么我做错了(我没有添加我的 foreach 尝试,希望有人能指出在该getTheGameType()
方法上运行 foreach 的位置)以及正确的方法。
//Just a manual array containing key/value pairs of games with their genres
$array = array(
"Grand Theft Auto" => "Action",
"NBA 2k14" => "Sports",
"COD" => "Shooting",
);
//My object
class videoGames {
public $title;
public $genere;
public function setTheGameType($title,$genere) {
$this->title = $title;
$this->genere = $genere;
}
public function getTheGameType() {
return 'The game genre for '.$this->title.' is:' . $this->genere;
}
}
//New instance of `videoGames` class
$list = new videoGames();
//Here I set the game title with its genere
foreach ($array as $title => $genere) {
$list-> setTheGameType($title,$genere);
}
//Echo the value passed into getTheGameType() function
echo $list->getTheGameType();
以上返回COD的游戏类型为:获取数组最后一个值的射击。
如何返回本质上循环该getTheGameType()
方法的所有键/值对?
编辑: 我通过添加 echo $list->getTheGameType();
到 foreach 循环中使其工作。
对方法有疑问?这是不好的做法吗?
foreach ($array as $title => $genere) {
$list-> setTheGameType($title,$genere);
echo $list->getTheGameType();
}