Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

PHP PHP Basics Daily Exercise Program Conditionals

Why is my answer accepted? It's outputting the correct results

Am I missing something?

<?php
$studentOneName = 'Dave';
$studentOneGPA = 3.8;

$studentTwoName = 'Treasure';
$studentTwoGPA = 4.0;

//Place your code below this comment
function isGPA($name, $gpa) {
  if($gpa === 4.0) {
    return "$name made the Honore Roll\n";
  } else {
    return "$name has a GPA of $gpa\n";
  }
}

echo isGPA($studentOneName,$studentOneGPA);
echo isGPA($studentTwoName,$studentTwoGPA);
?>

2 Answers

Hi Alexandru!

Could you share your answer?

BTW, I would have coded it like this:

<?php
$studentOneName = 'Dave';
$studentOneGPA = 3.8;

$studentTwoName = 'Treasure';
$studentTwoGPA = 4.0;

//Place your code below this comment
function echoStudent($name, $gpa) {
  if ($gpa == 4.0) {
    echo $name . " made the Honor Roll";
  } else {
    echo $name . " has a GPA of " . $gpa;
  }
}

echoStudent($studentOneName, $studentOneGPA);
echoStudent($studentTwoName, $studentTwoGPA);

?>

Although it doesn't pass the challenge (it's still how I would code it in the real world, though)?!?

This passes:

<?php

$studentOneName = 'Dave';
$studentOneGPA = 3.8;

$studentTwoName = 'Treasure';
$studentTwoGPA = 4.0;

//Place your code below this comment
if ($studentOneGPA == 4.0) {
  echo $studentOneName . " made the Honor Roll";
} else {
  echo $studentOneName . " has a GPA of " . $studentOneGPA;
}

if ($studentTwoGPA == 4.0) {
  echo $studentTwoName . " made the Honor Roll";
} else {
  echo $studentTwoName . " has a GPA of " . $studentTwoGPA;
}

?>

But that is not the best way to code it - it's not DRY (Don't Repeat Yourself.)

Since you need to use the same code block twice (with different variables) - you should use a function.

And no reasonable programmer would disagree.

I hope that helps.

Stay safe and happy coding!

Fantastic! Thank for the reply.