Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialRaul Chiru
Courses Plus Student 2,776 Pointsi'm a little stuck here
Create a method on Fish named getInfo that takes no parameters and returns a string that includes the common_name, flavor, and record_weight for the fish. When called on $bass, getInfo might return "A Largemouth Bass is an Excellent flavored fish. The world record weight is 22 pounds 5 ounces."
<?php
class Fish {
public $common_name;
public $flavor;
public $record_weight;
function __construct($name, $flavor, $record){
$this->common_name = $name;
$this->flavor = $flavor;
$this->record_weight = $record;
}
public function getInfo(){
return "Fish Name: ". $this->common_name;
return "Fish flavor: ". $this->flavor;
return "Fish record_ewight: ". $this->record_weight;
}
$bass = new Fish( "Largemouth Bass", "Excellent", "22 pounds 5 ounces");
echo $p->getInfo();
?>
2 Answers
Marcus Parsons
15,719 PointsHi again Raul! :)
In this last task, you have to keep in mind how return
works for functions. Once a function hits a return
command, the function stops and returns the values that are a part of that command. So, with that in mind, you can't have 3 return
commands, one after another, in a function.
But, you can concatenate all of your data together into one return
statement. And, then in your echo
line, you want to push the $bass
object to getInfo()
not a missing $p
object.
<?php
class Fish {
public $common_name;
public $flavor;
public $record_weight;
function __construct($name, $flavor, $record){
$this->common_name = $name;
$this->flavor = $flavor;
$this->record_weight = $record;
}
public function getInfo() {
//Go with concatenation for one return value
return "Fish Name: " . $this->common_name .
"Fish flavor: " . $this->flavor .
"Fish record_weight: " . $this->record_weight;
}
}
$bass = new Fish( "Largemouth Bass", "Excellent", "22 pounds 5 ounces");
//push $bass data into getInfo()
echo $bass->getInfo();
?>
Raul Chiru
Courses Plus Student 2,776 PointsThanks again, Marcus! You're really good :)
Marcus Parsons
15,719 PointsThank you, Raul! I really appreciate that =] I just like to help out where I can. Happy Coding! :)