Guten Morgen!
Zu dem was EKKi bereits schrieb:
$_POST['button']=$test;
echo $test;
Davon abgesehen, dass das falsch ist, wozu soll das gut sein?
Wieso willst du die Variable vor der Ausgabe kopieren? Das ist völlig unnötig und du solltest gleich echo $_POST['button']; schreiben.
Wobei du dann noch vergessen hast den Kontext zu beachten in dem die Ausgabe geschieht.
Wenn du mal den Inhalt eines Input-Feldes ausgeben willst und der Inhalt ist z.B. "<span></span>", dann siehst du rein gar nichts.
Ausgaben in HTML gehören immer in htmlspecialchars().
Also echo htmlspecialchars($_POST['button']);.
Grüße, Matze