Workflow and Source Panels
Response State Panel
Replay a small response state machine with scalar request and response values.
response state
Model a response as scalar state before encoding or sending it in a real application.
Response State Panel
response_state_panel.php
Replay: real traced execution (multi-file project)
<?php
$route = "status";
$status = "";
$message = "";
if ($route === "refresh") {
$status = "ok";
$message = "cache refreshed";
} elseif ($route === "archive") {
$status = "queued";
$message = "archive queued";
} else {
$status = "ok";
$message = "service ready";
}
$payload = json_encode(["status" => $status, "message" => $message]);
echo "route=" . $route . "\n";
echo "status=" . $status . "\n";
echo "payload=" . $payload . "\n";
<?php
$route = "refresh";
$status = "";
$message = "";
if ($route === "refresh") {
$status = "ok";
$message = "cache refreshed";
} elseif ($route === "archive") {
$status = "queued";
$message = "archive queued";
} else {
$status = "ok";
$message = "service ready";
}
$payload = json_encode(["status" => $status, "message" => $message]);
echo "route=" . $route . "\n";
echo "status=" . $status . "\n";
echo "payload=" . $payload . "\n";
<?php
$route = "archive";
$status = "";
$message = "";
if ($route === "refresh") {
$status = "ok";
$message = "cache refreshed";
} elseif ($route === "archive") {
$status = "queued";
$message = "archive queued";
} else {
$status = "ok";
$message = "service ready";
}
$payload = json_encode(["status" => $status, "message" => $message]);
echo "route=" . $route . "\n";
echo "status=" . $status . "\n";
echo "payload=" . $payload . "\n";
$route ← status, $status ← (empty), $message ← (empty), $payload ← {"status":"ok","message":"service ready"}
1<?php2$route→ status = "status"; //@route="refresh", "archive"3$status→ (empty) = "";4$message→ (empty) = "";56if ($route === "refresh") {7 $status = "ok";8 $message = "cache refreshed";9} elseif ($route === "archive") {10 $status = "queued";11 $message = "archive queued";12} else {13 $status→ ok = "ok";14 $message→ service ready = "service ready";15}1617$payload→ {"status":"ok","message":"service ready"} = json_encode(["status" => $statusok, "message" => $messageservice ready]);1819echo "route=" . $routestatus . "\n";20echo "status=" . $statusok . "\n";21echo "payload=" . $payload{"status":"ok","message":"service ready"} . "\n";outputroute=status status=ok payload={"status":"ok","message":"service ready"}
$route ← refresh, $status ← (empty), $message ← (empty)
1<?php2$route→ refresh = "refresh";3$status→ (empty) = "";4$message→ (empty) = "";$status ← ok, $message ← cache refreshed
6if ($routerefresh === "refresh") {7 $status→ ok = "ok";8 $message→ cache refreshed = "cache refreshed";9} elseif ($route === "archive") {$payload ← {"status":"ok","message":"cache refreshed"}
17$payload→ {"status":"ok","message":"cache refreshed"} = json_encode(["status" => $statusok, "message" => $messagecache refreshed]);1819echo "route=" . $routerefresh . "\n";20echo "status=" . $statusok . "\n";21echo "payload=" . $payload{"status":"ok","message":"cache refreshed"} . "\n";outputroute=refresh status=ok payload={"status":"ok","message":"cache refreshed"}
$route ← archive, $status ← (empty), $message ← (empty), $payload ← {"status":"queued","message":"archive queued"}
1<?php2$route→ archive = "archive";3$status→ (empty) = "";4$message→ (empty) = "";56if ($route === "refresh") {7 $status = "ok";8 $message = "cache refreshed";9} elseif ($route === "archive") {10 $status→ queued = "queued";11 $message→ archive queued = "archive queued";12} else {13 $status = "ok";14 $message = "service ready";15}1617$payload→ {"status":"queued","message":"archive queued"} = json_encode(["status" => $statusqueued, "message" => $messagearchive queued]);1819echo "route=" . $routearchive . "\n";20echo "status=" . $statusqueued . "\n";21echo "payload=" . $payload{"status":"queued","message":"archive queued"} . "\n";outputroute=archive status=queued payload={"status":"queued","message":"archive queued"}