zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden Function in Function

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 07.11.2008, 14:03
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 07.11.2008
Beiträge: 17
Bosko befindet sich auf einem aufstrebenden Ast
Standard Function in Function

hi,

ich stehe vor einem kleinen Problem das ich gern eine art function in einer function starten möchte oder anderes wenn in der function mit einer IF überprüfung der Wert Unstimmig ist, das die Function wieder von vorn anfängt,
mal ein kleines Beispiel was ich meine;

PHP-Code:
function test() {
    
$test "2";
    
$testa rand(1,2);

     if(
$test == $testa) {
        
test();
        exit();
     }
 return 
$testa;
}

echo 
test(); 
Wenn in der Function der Wert 1 ausgegeben wird, wird dies angezeigt, beim Wert 2 bleibt die Seite weiß, aber es soll ja nicht Wert 2 verarbeitet werden sondern wenn Wert 2 vorhanden ist, das die Function neustartet bis der Wert 1 ist.

Für die die Fragen wofür ich dies Brauche, für eine Überprüfung ab ein Wert schon vorhanden ist oder nicht.

Danke im Vorraus für eure Hilfe.

Gruß
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 07.11.2008, 14:14
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.843
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Erstmal, um die Rekursion sinnvoll zu nutzen, müsstest Du das so schreiben:
PHP-Code:
function test() {
    
$test "2";
    
$testa rand(1,2);

     if(
$test == $testa) {
        return 
test();
     }
 return 
$testa;
}

echo 
test(); 
Zweitens:
Wieso rekursiv?

Eine Schleife würde doch vollkommen ausreichen:
PHP-Code:
function test() {
    
$test "2";
    while (
true) {
        
$testa rand(12);
        if (
$test != $testa) {
            break;
        }
    }
 return 
$testa;
}

echo 
test(); 
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 07.11.2008, 14:26
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 07.11.2008
Beiträge: 17
Bosko befindet sich auf einem aufstrebenden Ast
Standard

oh man Super,

mensch, da hätte ich selbst drauf kommen können, ja manchmal ist das so, die leichten dinge des lebens sind auch die schwersten,

vielen danke und schönes wochenende
Mit Zitat antworten
  #4 (permalink)  
Alt 07.11.2008, 14:33
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.733
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Oder als do-while-Schleife:
PHP-Code:
function test()
{
    
$test 2;
    do {
        
$testa rand(12);
    } while (
$test != $testa);
    return 
$testa;

__________________
Markus Wulftange
Mit Zitat antworten
  #5 (permalink)  
Alt 07.11.2008, 14:48
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.843
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Argh, an die denke ich nie, weil ich die so "hässlich" finde, also vom Blick auf den Code. Sollte mir das mal angewöhnen.

Danke für den Hinweis.
Mit Zitat antworten
  #6 (permalink)  
Alt 07.11.2008, 15:48
Benutzerbild von netspy
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 13.08.2004
Ort: Leipzig
Beiträge: 1.953
netspy sorgt für eine eindrucksvolle Atmosphärenetspy sorgt für eine eindrucksvolle Atmosphäre
Standard

Wenn du eindeutige Zufallszahlen erzeugen willst, schau dir doch mal die User Contributed Notes zur rand-Funktion an. Da findest du einige ganz brauchbare Beispiele.

Mario
__________________
AppDev Blog · AppDev Forum
Mit Zitat antworten
  #7 (permalink)  
Alt 07.11.2008, 18:11
Benutzerbild von Curtains
(Schlafen||Programmieren)
XHTMLforum-Mitglied
 
Registriert seit: 27.08.2008
Beiträge: 198
Curtains befindet sich auf einem aufstrebenden Ast
Standard

Hier ist noch etwas für die Galerie:

PHP-Code:
<?php

// rekursiv
function test1()
{
    
$test 2;
    return ( 
$testa rand(12) ) ==  $test test1() : $testa;
}

// iterativ
function test2()
{
    
$test 2;
    while ( (
$testa rand(12) ) == $test ) {}
    return 
$testa;
}

echo 
test1();
echo 
test2();

?>
__________________
My knowledge is your right
Mit Zitat antworten
  #8 (permalink)  
Alt 07.11.2008, 18:34
Benutzerbild von Scheppertreiber
Chaot und Nonkonformist.
XHTMLforum-Kenner
 
Registriert seit: 13.03.2007
Ort: Steinmark im Spessart
Beiträge: 7.458
Scheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein LichtblickScheppertreiber ist ein Lichtblick
Standard

Ist das Beispiel ernst gemeint und läuft ?
Funktionsname = Variablenname ???
__________________
Grüße aus dem Spessart, Joe

{ table-layout: biertischistbesser; }
Der Mausinator
Mit Zitat antworten
  #9 (permalink)  
Alt 07.11.2008, 19:03
CMS-Entwickler
XHTMLforum-Mitglied
 
Registriert seit: 26.08.2006
Beiträge: 493
javaFreak befindet sich auf einem aufstrebenden Ast
Standard

@Schepper
Ja klar. Variablennamen dürfen gleich den Funktionsnamen sein. Ist aber soweit ich weiß in den meisten Programmiersprachen (das heißt aber nichts, denn ich programmiere sonst nur in Java )
__________________
Liebe Grüße,
Lukas aus Bocholt
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 07.11.2008, 19:24
Benutzerbild von Pablo
4 8 15 16 23 42
XHTMLforum-Kenner
 
Registriert seit: 31.05.2004
Beiträge: 1.772
Pablo sorgt für eine eindrucksvolle AtmosphärePablo sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von Scheppertreiber Beitrag anzeigen
Ist das Beispiel ernst gemeint und läuft ?
Funktionsname = Variablenname ???
Da in PHP alle Variablen mit $ eingeleitet werden, Funktionen jedoch nicht, geht das ohne weiteres... Na ja, und vor allem weil PHP die Syntax dermaßen egal ist...
__________________
Go Opera!
… oder Chrome. Auch cool.
Mit Zitat antworten
Sponsored Links
Antwort

Stichwörter
function, php

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
jquery bind hover function?? sepp88 Javascript & Ajax 1 05.06.2010 11:20
DIV ein- / ausblenden Benshy CSS 3 10.11.2009 19:49
Grafiken je nach Zustand Visu CSS 14 07.10.2009 20:28
Javascript für alle Browser darstellen lassen? Pinking Javascript & Ajax 10 08.10.2008 09:32


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:48 Uhr.