Schleifen Variblen

Hi,

folgendes Änfängerproblem, hoffe ich :D

PHP:

PHP:
function test_func()
 {
 	while($bedingung) {
 	
 	$glm = $variable_aus_der_db
					 
 	}
		
	return $glm;
 }

Kannso nicht funktionieren, da ja $glm nur in der while schleife existiert, also, gibt es eine möglichkeit die Variable länger als nur in der while schleife bestehen zu lassen ?

PS: google: erfolglos & global $glm funzt auch net ...

danke, dracius_m
 
du meinst etwa so?
PHP:
function test_func()
 {
 	$glm = '';
 	while($bedingung) {
 
 	$glm = $variable_aus_der_db
					 
 	}
		
	return $glm;
 }
 
Die Variable überlebt in beiden Fällen.
Es kann maximal sein, dass es beim Funktionsaufruf zum Verlust kommt. Ich arbeite selber nicht mit Funktionen, weshalb ich da nichts Genauses sagen kann, aber dass die Variable in der Funktion nicht "vergessen" wird, kann ich mit Sicherheit bestätigen :) .

Ich verwende fats ständig Schleifen in denen Variablen definiert werden (auch neu definiert, nicht nur umdefiniert) - es kam noch nie vor, dass eine Var nicht mehr vorhanden war.
 
Hallo,
das ist komplett falsch, eine Variablen Inhalt geht nicht nach einer Schleife verloren.

Versuch mal folgendes:
PHP:
<?php
$var = "";

while(true)
{
$var = "In der Schleife";
break;
}

echo $var;
?>

Wie du siehst steht beim Auruf der Seite der Inhalt aus der Schleife.

Dein Problem ist, du musst alle Variablen in die Funktion übertragen, sprich die Funktiion ist so nicht richtig:

PHP:
<?php
function test_func($bedingung, $variable_aus_der_db)
 {
     $glm = '';
     while($bedingung) {
 
     $glm = $variable_aus_der_db;
                     
     }
        
    return $glm;
 } 

$funktion_aufruf = test_func(5, 123);
echo $funktion_aufruf;

?>


5 ist die Bedingung und 123 ist die Variable aus deiner Datenbank.

P.S. Beim Funktionsaufruf kann man auch Variablen benutzen also anstatt 123 einfach $var_aus_db schreiben
 
Hi, Problem gelöst, danke für die Hilfe, lag aber an mir :D

PHP:
function test_func()
 {
     while($bedingung) {
     
     $glm = $variable_aus_der_db
                     
     }
        
    return $glm;
 }

Es funktioniert jetzt so in der Rohfassung:

PHP:
function test_func()
 {
     $glm[][];
     while($bedingung) {
     $glm[][];
     // DB connect mit globalen DB Variablen
     $glm = $mehrdimensionales Array aus der db
                     
     }
        
    return $glm;
 } 

//und dann kann ichs tasächlich mit:

$glm_global_clone = test_func();

// holen

meine Fehler waren:
fehlende in der Initialisierung und ein Datenbankfehler ...
 
Zurück
Oben