PHP Build a Basic PHP Website (2018) Building a Media Library in PHP Variables and Conditionals

Why doesn't this code work? It runs perfectly fine outside of Workspace.

<?php $flavor = "vanilla"; echo "<p>Your favorite flavor of ice cream is "; echo "$flavor"; echo ".</p>"; echo "<p>Hal's favorite flavor is $flavor, also!</p>"; ?>

index.php
<?php
$flavor = "vanilla";
echo "<p>Your favorite flavor of ice cream is ";
echo "$flavor";
echo ".</p>";
echo "<p>Hal's favorite flavor is $flavor, also!</p>";
?>

1 Answer

Julian Gutierrez
Julian Gutierrez
19,201 Points

Remove the quotes around $flavor, you need to echo out the the content that is stored in the variable $flavor not the string "$flavor" which you are currently doing.

<?php
echo $flavor;

Wow, that did the trick. Thanks Julian. I really appreciate your help. Though I'm still a little puzzled as to why it didn't work. I understand that single quotes and double quotes treat variables differently, but if you enclose a variable inside double quotations, the value of that variable should be fetched by PHP. Any input on this?

Julian Gutierrez
Julian Gutierrez
19,201 Points

Yeah didn't think about that but you're correct, echoing out a variable inside of double quotes will parse the PHP. I'm not use to seeing double quotes when it's just a single variable so it might just be the challenge trying to enforce best practice, but that's just my guess.