Bird
Raised Fist0
PHPprogramming~20 mins

PHP tags and embedding in HTML - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
PHP Embedding Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of PHP embedded in HTML
What is the output of this PHP code embedded in HTML when accessed via a browser?
PHP
<!DOCTYPE html>
<html>
<head><title>Test</title></head>
<body>
<?php echo "Hello, " . "World!"; ?>
</body>
</html>
AHello,World!
B<?php echo "Hello, " . "World!"; ?>
CHello, World!
DSyntax Error
Attempts:
2 left
💡 Hint
PHP code inside tags runs on the server and outputs text to the page.
❓ Predict Output
intermediate
2:00remaining
Short PHP tags output
What will this code output if short PHP tags are enabled on the server?
PHP
<html>
<body>
<?= "Quick output" ?>
</body>
</html>
ASyntax Error
B<?= "Quick output" ?>
CQuick output<?= "Quick output" ?>
DQuick output
Attempts:
2 left
💡 Hint
is a shortcut for if enabled.
❓ Predict Output
advanced
2:00remaining
Output with mixed PHP and HTML
What is the output of this code?
PHP
<html>
<body>
<?php
for ($i = 1; $i <= 3; $i++) {
    ?>
    <p>Number <?= $i ?></p>
<?php
}
?>
</body>
</html>
A<p>Number <?= $i ?></p><p>Number <?= $i ?></p><p>Number <?= $i ?></p>
B<p>Number 1</p><p>Number 2</p><p>Number 3</p>
CSyntax Error
DNumber 1Number 2Number 3
Attempts:
2 left
💡 Hint
PHP code can switch in and out of HTML mode inside loops.
❓ Predict Output
advanced
2:00remaining
PHP tags inside HTML attributes
What will be the output of this code?
PHP
<html>
<body>
<a href="page.php?id=<?php echo 5; ?>">Link</a>
</body>
</html>
A<a href="page.php?id=5">Link</a>
B<a href="page.php?id=<?php echo 5; ?>">Link</a>
C<a href="page.php?id=">Link</a>
DSyntax Error
Attempts:
2 left
💡 Hint
PHP code inside attribute values outputs the result directly.
❓ Predict Output
expert
2:00remaining
Output with nested PHP tags and whitespace
What is the exact output of this code including spaces and newlines?
PHP
<html>
<body>
<?php
echo "Start";
?>

<?php
 echo " ";
?>
End
</body>
</html>
A
Start 
End
BStartEnd
C
Start
End
DSyntax Error
Attempts:
2 left
💡 Hint
PHP code outputs text; whitespace outside PHP tags is preserved.

Practice

(1/5)
1. Which of the following is the correct way to start a PHP code block inside an HTML file?
easy
A. <?php>
B. <?php
C. <php?
D. <?php/>

Solution

  1. Step 1: Recognize PHP opening tag syntax

    The correct PHP opening tag is <?php without the closing > inside the tag itself.
  2. Step 2: Compare options with correct syntax

    <?php matches the correct opening tag exactly, while others have extra characters or wrong order.
  3. Final Answer:

    <?php -> Option B
  4. Quick Check:

    PHP code starts with <?php [OK]
Hint: PHP code always starts with <?php [OK]
Common Mistakes:
  • Using <php? instead of <?php
  • Adding extra > inside the opening tag
  • Confusing closing tag with opening tag
2. Which of these is the correct way to embed PHP code inside an HTML file?
easy
A. <?php echo 'Hello'; ?>
B. <php echo 'Hello'; ?>
C. <? echo 'Hello'; ?>
D. <?php echo 'Hello' ?>

Solution

  1. Step 1: Identify correct PHP tags and syntax

    The full PHP opening tag is <?php and must be closed with ?>. The statement ends with a semicolon.
  2. Step 2: Check each option for syntax correctness

    <?php echo 'Hello'; ?> uses <?php and closes with ?> and has a semicolon after echo statement, which is correct.
  3. Final Answer:

    <?php echo 'Hello'; ?> -> Option A
  4. Quick Check:

    Full PHP tags with semicolon = correct syntax [OK]
Hint: Use full <?php ... ?> tags with semicolon [OK]
Common Mistakes:
  • Omitting semicolon after PHP statements
  • Using <php instead of <?php
  • Using short tags <? without php (may be disabled)
3. What will be the output of this code snippet embedded in an HTML file?
<html>
<body>
<?php
  echo "Today is ".date('l').".";
?>
</body>
</html>
medium
A. Today is Monday.
B. Today is l.
C. Today is date('l').
D. Syntax error

Solution

  1. Step 1: Understand PHP date function usage

    The date('l') function returns the full name of the current day of the week, e.g., Monday, Tuesday.
  2. Step 2: Analyze echo statement output

    The echo concatenates "Today is " with the day name and a period, so output will be like "Today is Monday." depending on the current day.
  3. Final Answer:

    Today is Monday. -> Option A
  4. Quick Check:

    date('l') returns day name, so output is Today is Monday. [OK]
Hint: date('l') returns day name, output shows full sentence [OK]
Common Mistakes:
  • Treating date('l') as a string literal
  • Missing concatenation operator
  • Expecting syntax error from correct code
4. Identify the error in this PHP embedded in HTML code:
<html>
<body>
<?php
  echo "Hello World"
?>
</body>
</html>
medium
A. Echo statement syntax error
B. Incorrect PHP opening tag
C. Missing semicolon after echo statement
D. Missing closing PHP tag

Solution

  1. Step 1: Check PHP statement syntax

    The echo statement must end with a semicolon ; to separate statements.
  2. Step 2: Verify PHP tags and code completeness

    The opening tag <?php and closing tag ?> are correct and present.
  3. Final Answer:

    Missing semicolon after echo statement -> Option C
  4. Quick Check:

    Statements need semicolon; missing here causes error [OK]
Hint: Always end PHP statements with semicolon [OK]
Common Mistakes:
  • Forgetting semicolon after echo
  • Confusing short tags with full tags
  • Assuming closing tag is optional
5. You want to embed PHP in HTML to display a greeting that changes based on the time of day. Which code snippet correctly uses PHP tags and logic inside HTML?
hard
A. <?php echo if (date('H') < 12) { 'Good morning!'; } else { 'Good afternoon!'; } ?>
B. <? if (date('H') < 12) echo 'Good morning!'; else echo 'Good afternoon!'; ?>
C. <php if (date('H') < 12) { echo 'Good morning!'; } else { echo 'Good afternoon!'; } ?>
D. <?php if (date('H') < 12) { echo 'Good morning!'; } else { echo 'Good afternoon!'; } ?>

Solution

  1. Step 1: Check PHP opening and closing tags

    <?php if (date('H') < 12) { echo 'Good morning!'; } else { echo 'Good afternoon!'; } ?> uses full <?php ... ?> tags correctly. <? if (date('H') < 12) echo 'Good morning!'; else echo 'Good afternoon!'; ?> uses short tags which may be disabled. <php if (date('H') < 12) { echo 'Good morning!'; } else { echo 'Good afternoon!'; } ?> uses <php which is invalid. <?php echo if (date('H') < 12) { 'Good morning!'; } else { 'Good afternoon!'; } ?> misuses echo with if statement.
  2. Step 2: Verify PHP syntax and logic

    <?php if (date('H') < 12) { echo 'Good morning!'; } else { echo 'Good afternoon!'; } ?> correctly uses if-else with echo inside braces. <?php echo if (date('H') < 12) { 'Good morning!'; } else { 'Good afternoon!'; } ?> tries to echo an if statement directly, which is invalid syntax.
  3. Final Answer:

    <?php if (date('H') < 12) { echo 'Good morning!'; } else { echo 'Good afternoon!'; } ?> -> Option D
  4. Quick Check:

    Full PHP tags + proper if-else syntax = correct [OK]
Hint: Use full <?php tags and proper if-else syntax [OK]
Common Mistakes:
  • Using short tags <? which may be disabled
  • Incorrect PHP opening tag like <php
  • Trying to echo an if statement directly
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard