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 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.