Ich versuche, die Schlüssel eines Arrays als Variablen zu extrahieren. Ich habe folgenden Code dafür:So erstellen Sie Variablen aus Array-Schlüsseln
01 | $array = [
02 | "bantya" => "BANTYA",
03 | "sontya" => "SONTYA",
04 | "niltya" => "NILTYA"
05 | ];
06 |
07 | function makeVar ($array) {
08 | foreach ($array as $key => $value) {
09 | $$key = $value;
10 | }
11 | echo $bantya;
12 | }
13 |
14 | makeVar($array);
15 | echo $bantya;
Das Problem ist, Zeile 11 Echos „BANTYA“ richtig, aber das gleiche über die Leitung 15 ist nicht wahr. Dort heißt es:
Notice: Undefined variable: bantya in file\path on line 15
Meine Frage ist, warum ist es, diesen Fehler zeigt? Wie kann ich Zeile 15 dazu bringen, global "BANTYA" auszugeben (was außerhalb des Bereichs von function makeVar($array)
liegt), nachdem makeVar
die Funktion deklariert wurde?
Vielen Dank im Voraus ..
Woops. Verwenden Sie 'extract()': http://php.net/manual/en/function.extract.php – Bailey
Dies scheint nutzlos. Sie können 'BANTYA' immer noch durch' echo $ array ['bantya'] ' –
Zuweisen zu' $ GLOBALS [$ key] 'anstelle von' $$ key', um eine globale Variable zu erstellen. Oder benutze 'extract()'. – Barmar