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 trial

PHP Build a Simple PHP Application Wrapping Up The Project Objects

Ian Hilton
Ian Hilton
6,223 Points

Can't get past Challenge Task 4 of 7 in PHP Development...

Here's the task...

PalprimeChecker objects have a property called number. This task has two parts. First, assign that property a value of 17. Second, remove the two hash signs (##) in the first echo statement and instead concatenate the value of this number property. (Be sure to preserve the space after the two hash signs by concatenating a space after the number.)

Here's my answer: <?php

include ("class.palprimechecker.php");

$checker = "";

$checker = new PalprimeChecker();

$checker->PalprimeChecker = 17;

echo "The number " . $checker . " "; echo "(is|is not)"; echo " a palprime.";

?>

What am I doing wrong?

1 Answer

In this line

$checker->PalprimeChecker = 17;

should be

$checker->number = 17;

"number" is the name of the property on $checker. $checker is now a new PalprimeChecker object. You only needed that name to create it. The whole object is now in $checker.

Ian Hilton
Ian Hilton
6,223 Points

Thank You so much for your reply Lonnie! I also realized that below I needed to have

echo "The number " . $checker->number . " "; echo "(is|is not)"; echo " a palprime.";

instead of:

echo "The number " . $checker . " "; echo "(is|is not)"; echo " a palprime.";