2016-08-21 5 views
-1

Gibt es ein Problem beim Setzen einer globalen Variable?

Dies ist INSIDE eine Funktion, & in einer foreach-Schleife. Diese drei Linien sind eine nach der anderen (es nirgendwo anders geht) ...

$GLOBALS["nameaa"]=$abl; 
    $search_array_log.= " ADDING GLOBALS NAME - '$ab1'\n"; 
    $search_array_log.= " GLOBAL NAME1 NOWAa '".$GLOBALS["nameaa"]."'\n"; 

Aber bei Betrachtung der $search_array_log Daten danach der GLOBALS Wert isnt .. - es ist ein leeres Ergebnis ...

Ich versuchte name & dachte, es kann ein reserviertes Wort sein, so geändert, nameaa, aber die $GLOBALS["nameaa"] ist immer noch leer.

Ich weiß, es gibt möglicherweise einige Probleme/Prozesse zu folgen, um Daten in/aus Funktionen zu senden ... Aber diese drei Zeilen sind im selben Code - Nein gehen/aus (noch) der Funktion. ..

Kann jemand beraten, was die Ursache dafür sein kann, warum diese $GLOBALS wird nicht eingestellt?

Ps $search_array_log wird für alles vor/nach diesen drei Zeilen gespeichert/aufgezeichnet - es ist eine lange Textdatei/Protokolldatei.

EDIT: $ab1 existiert als Wert & wird in meinen Protokollen angezeigt - ADDING GLOBALS NAME - $ab1.

+0

Was haben Sie in $ ab1? –

+3

Sie sprechen von '$ ab1', als' A-B-ONE', aber verwenden Sie '$ abl', als' A-B-L' im Code –

+0

Danke. Ich sollte Großbuchstaben in Zukunft verwenden ... anstelle der Zahl 1, verwenden Sie eine andere offensichtliche Zahl, die nicht mit Kleinbuchstaben verwechselt werden kann l) –

Antwort

0

Eine Variable außerhalb Funktion ist eine globale Variable wie

<?php 
$abc = 10; //global var 
function foo { 
    global $abc; // to use global variable inside function 
} 
?> 

Hoffe, es hilft.

+0

Was hat das mit der Frage zu tun? – Barmar

Verwandte Themen