json_decode Array und Inhalt einer Variable anzeigen

Ich komme im Moment mit einem json_decode nicht weiter.

$Var = „12345“;

$json = ‚{„Test“: „{$Var}“}‘;
$array = json_decode($json, true);
var_dump($array);

$string = $array[„Test“];
var_dump($string);

$test = „{$Var}“;
var_dump($test);

liefert:

array(1) {
[„Test“]=>
string(6) „{$Var}“
}
string(6) „{$Var}“
string(5) „12345“

Warum übernimmt der zweite var_dump

$string = $array[„Test“];
var_dump($string);

nicht auch 12345 ?!?!?!

Kann jemand Hilfestellung leisten?

Geschweifte Klammern für den komplexen Syntax bei Variablen, funktionieren nur mit doppelten Anführungszeichen.
PHP: Strings - Manual
Michael

Hallo, habe es jetzt achtmal gelesen und versucht zu verstehen.

Komme nicht zum Ergebnis.

Las die Klammern weg, brauchst du nicht.
Nutz dem Punkt als Operator um den String zu bauen.

$Var = "12345";

$json = '{"Test": "'.$Var.'"}';
$array = json_decode($json, true);
var_dump($array);

$string = $array["Test"];
var_dump($string);

$test = "$Var";
var_dump($test);


Ich würde aber $Var als Zahl speichern und als Grundlage für den JSON-String ein Array nutzen.

$Var = 12345;
$Test = Array("Test" => $Var);
\\$json = '{"Test": "'.$Var.'"}';
$json = json_encode($Test);
var_dump($json);
$array = json_decode($json, true);
var_dump($array);

$string = $array["Test"];
var_dump($string);


Michael

Hallo Michael,

Danke für deine Schnelle Hilfe!

manchmal… naja, wieder etwas dazugelernt.