$_POST represents submitted form fields.

form field cleanup Form fields are text, so a small cleanup step is usually the first move.

Form Post

nameInput
form_post.php
Replay: real traced execution (multi-file project)
<?php
$nameInput = "Ada";
$_POST["name"] = "  " . $nameInput . "  ";
$name = trim($_POST["name"] ?? "guest");
$label = $name === "" ? "guest" : $name;
$length = strlen($label);

echo "name=" . $label . "\n";
echo "length=" . $length . "\n";
<?php
$nameInput = "Grace";
$_POST["name"] = "  " . $nameInput . "  ";
$name = trim($_POST["name"] ?? "guest");
$label = $name === "" ? "guest" : $name;
$length = strlen($label);

echo "name=" . $label . "\n";
echo "length=" . $length . "\n";
<?php
$nameInput = "Linus";
$_POST["name"] = "  " . $nameInput . "  ";
$name = trim($_POST["name"] ?? "guest");
$label = $name === "" ? "guest" : $name;
$length = strlen($label);

echo "name=" . $label . "\n";
echo "length=" . $length . "\n";
  1. $nameInput ← Ada, $_POST["name"] ← Ada , $name ← Ada, $label ← Ada

    1<?php2$nameInput→ Ada = "Ada"; //@nameInput="Grace", "Linus"3$_POST["name"]→   Ada   = "  " . $nameInputAda . "  ";4$name→ Ada = trim($_POST["name"]  Ada   ?? "guest");5$label→ Ada = $nameAda === "" ? "guest" : $name;6$length→ 3 = strlen($labelAda);78echo "name=" . $labelAda . "\n";9echo "length=" . $length3 . "\n";
    outputname=Ada
    length=3
    values this stepArray$_POST
  1. $nameInput ← Grace, $_POST["name"] ← Grace , $name ← Grace

    1<?php2$nameInput→ Grace = "Grace";3$_POST["name"]→   Grace   = "  " . $nameInputGrace . "  ";4$name→ Grace = trim($_POST["name"]  Grace   ?? "guest");5$label→ Grace = $nameGrace === "" ? "guest" : $name;6$length→ 5 = strlen($labelGrace);78echo "name=" . $labelGrace . "\n";9echo "length=" . $length5 . "\n";
    outputname=Grace
    length=5
    values this stepArray$_POST
  1. $nameInput ← Linus, $_POST["name"] ← Linus , $name ← Linus

    1<?php2$nameInput→ Linus = "Linus";3$_POST["name"]→   Linus   = "  " . $nameInputLinus . "  ";4$name→ Linus = trim($_POST["name"]  Linus   ?? "guest");5$label→ Linus = $nameLinus === "" ? "guest" : $name;6$length→ 5 = strlen($labelLinus);78echo "name=" . $labelLinus . "\n";9echo "length=" . $length5 . "\n";
    outputname=Linus
    length=5
    values this stepArray$_POST