Start with a tiny PHP program that stores a name and prints a greeting.

echo `echo` writes text so you can see what the program produced.

Hello PHP

name
hello.php
Replay: real traced execution (multi-file project)
<?php
$name = "PHP";
$message = "Hello, " . $name . "!";

echo $message . "\n";
<?php
$name = "Ada";
$message = "Hello, " . $name . "!";

echo $message . "\n";
<?php
$name = "Rasmus";
$message = "Hello, " . $name . "!";

echo $message . "\n";
  1. $name ← PHP, $message ← Hello, PHP!

    1<?php2$name→ PHP = "PHP"; //@name="Ada", "Rasmus"3$message→ Hello, PHP! = "Hello, " . $namePHP . "!";45echo $messageHello, PHP! . "\n";
    outputHello, PHP!
  1. $name ← Ada, $message ← Hello, Ada!

    1<?php2$name→ Ada = "Ada";3$message→ Hello, Ada! = "Hello, " . $nameAda . "!";45echo $messageHello, Ada! . "\n";
    outputHello, Ada!
  1. $name ← Rasmus, $message ← Hello, Rasmus!

    1<?php2$name→ Rasmus = "Rasmus";3$message→ Hello, Rasmus! = "Hello, " . $nameRasmus . "!";45echo $messageHello, Rasmus! . "\n";
    outputHello, Rasmus!

Follow the Greeting

  1. $name starts as "PHP".
  2. The program joins "Hello, ", $name, and "!".
  3. $message becomes Hello, PHP!.
  4. echo prints Hello, PHP!. | name | message | | --- | --- | | PHP | Hello, PHP! | | Ada | Hello, Ada! | | Rasmus | Hello, Rasmus! |

Exercise: hello.php

Reproduce Hello, PHP!, then try Ada and Rasmus and predict each greeting before running it.