Ankündigung

Einklappen
Keine Ankündigung bisher.

Foreach-Schleife in Variable speichern

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Foreach-Schleife in Variable speichern

    ich habe eine foreach-Schleife und würde sie gerne in einer Variablen speichern und außerhalb der Schleife wieder ausgeben:
    PHP-Code:

     
    foreach ($Ergebnis as $Eintrag) {
        
    $Ausgabe'<strong>' htmlentities($Eintrag->Name) . '</strong><br>' "\n";
        
    $Ausgabe.= htmlentities($Eintrag->Strasse) . '<br>' "\n";
        
    $Ausgabe.= htmlentities($Eintrag->PLZ) . ' ' htmlentities($Eintrag->Ort) . '<br><br>' "\n";
        
    $Ausgabe.= 'Tel.: ' htmlentities($Eintrag->Telefon) . '<br>' "\n";
        
    $Ausgabe.= 'Fax: ' htmlentities($Eintrag->Fax) . '<br><br>' "\n";
                                                                                                            
            if (!empty(
    $Eintrag->eMail)) {
             
    $Ausgabe.= 'E-Mail: <a href="mailto:' $Eintrag->eMail '" class="txt_grey" style="text-decoration:underline;">' htmlentities($Eintrag->eMail) . '</a><br>' "\n";
          }
                                                                                                           
                                                                                                     
          if (!empty(
    $Eintrag->Website)) {
            
    $Ausgabe.= 'Website: <a href="' $Eintrag->Website '" target="_blank">' htmlentities($Eintrag->Website) . '</a><br><br><br>' "\n";
           }                                                              
                                                        
        echo 
    'Ausgabe='.$Ausgabe;                                              
                                                          
     } 


    wenn ich echo 'Ausgabe='.$Ausgabe; in die Schleife setze, werden mir alle Ergebnisse der suche ausgegeben, wenn ich es außerhalb setze nur das letzte.

    wie kann ich denn nun alle Ergebnisse außerhalb der Schleife ausgeben lassen?


  • #2
    Was hast du denn vor?
    http://hallophp.de

    Kommentar


    • #3
      PHP-Code:
      // Nur eine kleine Änderung:

      $Ausgabe '';
      foreach (
      $Ergebnis as $Eintrag) {
          
      $Ausgabe .= '<strong>' htmlentities($Eintrag->Name) . '</strong><br>' "\n";
      // .= statt = 
      PHP-Code:
      if ($var != 0) {
        
      $var 0;

      Kommentar


      • #4
        PHP-Code:
        $Ausgabe'<strong>' htmlentities($Eintrag->Name) . '</strong><br>' "\n"
        In dieser Zeile Überschreibst du jedesmal die Variable "$Ausgabe".
        Wenn du dein echo in die schleife packst wird bei jedem durchgang der Inhalt ausgegeben und dann in der obigen zeile überschrieben.
        Wenn das echo ausserhalb ist wird halt nicht ausgegeben und dann oben überschrieben so das nur der letzte Durchgang drin ist.

        mach mal in der obigen Zeile das:
        PHP-Code:
        $Ausgabe.= '<strong>' htmlentities($Eintrag->Name) . '</strong><br>' "\n"
        Und vor der foreach-Schleife:
        PHP-Code:
        $Ausgabe='';/*zwei ' */ 
        Wobei ich nicht weiß ob das letzte wirklich notwendig ist, auf jedenfall gehst du damit sicher das $Ausgabe vor der Schleife einen leeren string enthält.

        Kommentar


        • #5
          Wenn du eine Funktionalität zwischenspeichern möchtest verwende Funktionen oder Klassenmethoden dafür! Ein Ergebnis kannst du auf verschiedenste Weisen zwischenspeichern, eben in einer Variable, der Session, einer Datei oder Datenbank. Kommt darauf an was du tun möchtest.
          "Mein Name ist Lohse, ich kaufe hier ein."

          Kommentar


          • #6
            @Asipak: Das ist ein Ausschnitt aus Händlersuche, und die foreach-schleife gibt mir Händler mit Kontaktdaten in einem Umkreis zu einer bestimmten PLZ aus.
            Der User gibt auf einer Flash Seite die PLZ und den Umkreis ein, Flash überträgt die zwei variablen an das PHP Script, was diese auswertet. Soweit funktioniert alles.
            Was ich nun noch möchte ist, das die Daten wieder in eine andere Flash-Datei eingelesen und angezeigt werden.
            Flash läd z.B. folgendes außerhalb der Schleife ohne Probleme in die swf:

            PHP-Code:
            $Ausgabe=testtest;
            echo 
            'Ausgabe='.$Ausgabe
            aber wenn das echo innerhalb der Schleife steht wird es nicht in die swf geladen.


            @Wolla&ArtiHl: danke, das funktioniert^^

            Kommentar


            • #7
              Zitat von Sirius Beitrag anzeigen
              ich habe eine foreach-Schleife und würde sie gerne in einer Variablen speichern
              Schon allein diese Formulierung spricht dafür, dass dir so ziemlich das Verständnis für Programmiersprachen allgemein zu fehlen scheint.

              Vor weiteren Fragen dieser Art, lerne bitte Grundlagen.

              Kommentar


              • #8
                @ChrisB muss ich denn bei jeder Frage drauf achten das sie zu 100% richtig formuliert ist? Wusste doch scheinbar jeder was ich damit meine, also ist es doch auch ok. Ich weiß das es so nicht ganz richtig ist, aber ich Poste ja auch im Anfänger-Forum, ich denke, als Anfänger darf ich mir auch mal eine unglückliche Formulierung erlauben.

                Und: ich habe Grundlagen gelernt aber ich lerne noch dazu, aber wenn ich bei einem Problem nicht weiter komme und mir die Hilfe im Moment nicht weiter hilft bringt es mir auch nichts ewig vorm Rechner zu sitzen und das Script anzustarren aufdass eine Lösung vom Himmel fällt. Dann frage ich eben im Forum nach. Und es ist ja auch nicht so das ich das Forum mit Einträgen zuspamme.

                Kommentar


                • #9
                  Zitat von Sirius Beitrag anzeigen
                  @ChrisB muss ich denn bei jeder Frage drauf achten das sie zu 100% richtig formuliert ist?
                  Gibt es einen Grund, das nicht zu tun?

                  Wusste doch scheinbar jeder was ich damit meine, also ist es doch auch ok.
                  Die Formulierung macht auf mich nun mal den Eindruck, dass noch so gut wie kein Grundlagenwissen vorhanden ist.
                  Sorry, falls diese Einschätzung falsch sein sollte. Dem entgegen zu wirken, hast du aber selbst in der Hand - in dem du dich klar und präzise ausdrückst.

                  Kommentar


                  • #10
                    Wenn du 'ne Cola möchtest, quasselst du doch auch nicht von Erdbeertorte.

                    Vermutlich ist dir noch gar nicht aufgefallen, wie sinnentleert der von ChrisB zitierte Satz eigentlich ist. Selbst wenn das gehen würde, wäre es nicht das, was du erreichen wolltest.
                    http://hallophp.de

                    Kommentar


                    • #11
                      Gibt es einen Grund, das nicht zu tun?
                      Nein und das wollt ich damit auch nicht sagen.
                      Aber ich war eben diesmal unachtsam bei meiner Formulierung (ja, sollte nicht passieren) und werd direkt "angegriffen" (ich weiß, ist nicht böse gemeint gewesen) das ich keine Grundlagen kenne und kein Verständnis für Programmiersprachen habe.

                      in dem du dich klar und präzise ausdrückst.
                      ich bemüh mich, werd in Zunkunft besser drauf achten, sorry.

                      Vermutlich ist dir noch gar nicht aufgefallen, wie sinnentleert der von ChrisB zitierte Satz eigentlich ist.
                      Naja doch- jetzt, nachdem er den Satz zitiert hat.

                      Kommentar


                      • #12
                        werd direkt "angegriffen" (ich weiß, ist nicht böse gemeint gewesen)
                        Das ist nicht nur "nicht böse gemeint", sondern soll dir klar machen, wie wichtig korrektes Formulieren ist. Gerade beim Programmieren, wo es auf jedes Zeichen ankommen kann und Probleme halb gelöst sind, wenn sie vernünftig beschrieben sind.
                        http://hallophp.de

                        Kommentar


                        • #13
                          Zitat von Asipak Beitrag anzeigen
                          Das ist nicht nur "nicht böse gemeint", sondern soll dir klar machen, wie wichtig korrektes Formulieren ist. Gerade beim Programmieren, wo es auf jedes Zeichen ankommen kann und Probleme halb gelöst sind, wenn sie vernünftig beschrieben sind.
                          weiß ich doch, deswegen hab ich ja das ist nicht böse gemeint dazu gesetzt

                          Kommentar


                          • #14
                            aber ich Poste ja auch im Anfänger-Forum, ich denke, als Anfänger darf ich mir auch mal eine unglückliche Formulierung erlauben.
                            Nicht, wenn Du es besser weißt. „Anfänger“ ist kein Freifahrtschein, anderen Mehrarbeit aufzubürden. Jeder ist angehalten, so viel wie möglich zur Lösung seines eigenen Problems beizutragen.
                            --

                            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                            --

                            Kommentar

                            Lädt...
                            X