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 trialHariharan Ramesh
7,403 Pointswhats wrong with this php code?
I cant seem to figure out whats wrong?
<?php
class Fish {
public $common_name;
public $flavor;
public $record_weight;
public function __construct($name,$flavor,$record)
{
$this->common_name= $name;
$this->flavor =$flavor;
$this->record_weight =$record;
}
public function getInfo(){
return "A $this->$common_name is an $this->$flavor flavored fish.The world recored weight $this->$record_weight";
};
}
$bass = new Fish("Largemouth Bass" , "Excellent" , "22 pounds 5 ounces");
echo $bass->getInfo();
?>
1 Answer
Grace Kelly
33,990 PointsYou need to concatenate your values inside your getInfo() method with a ".", like so:
<?php
public function getInfo() {
return "A " . $this->common_name . " is a(n)" . $this->flavor . " flavored fish. The world record weight is " . $this->record_weight . ".";
}
?>
Hope that helps!!
Hariharan Ramesh
7,403 PointsHariharan Ramesh
7,403 PointsHi thanks grace, i figured the problem was that i put the extra "$" signs in the return statement. and concatenation is only needed with single quotes with the double quotes it works now :D.
Grace Kelly
33,990 PointsGrace Kelly
33,990 Pointsah yes i forgot to mention that, even though I had corrected it in my code ooops :s haha happy coding :)