Inhalt einer Variablen aus Klasse übergeben

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

  • Inhalt einer Variablen aus Klasse übergeben

    Hallo Zusammen,

    dies ist jetzt evtl. eine weniger schwierige Frage vermute ich, es fällt mir
    aber trotzdem schwer
    Ich habe eine Klasse mit folgender Funktion:

    PHP-Code:
    function addNewUser($nummer$name)
    {
    $error true;

    foreach(
    $this->$liste as $key => $value)
    {
    if(
    $nummer == $key)
    {
    $error false;
    return 
    $error;
    }
    }

    Eine andere PHP Datei ruft aus dieser Klasse o.g. Funktion auf - die Funktion macht noch etwas mehr, ist aber zur Lösung des Problems nicht notwendig.
    So sieht der Aufruf aus:
    PHP-Code:
    $UserClass->addNewUser($nummer$name
    wie kann ich auf den Error "false" bzw. die Variable $error aus der Klasse zugreifen?
    Danke und Gruss Tolwin

  • #2
    wie machst du es denn mit anderen funktionen in php?

    $ergebnis = $user->addNewUser($nummer, $name)
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Das habe ich schon versucht- funktioniert aber nicht.
      Kann mir nicht erklären warum. Hier ist noch mal der Rest des Quellcodes
      , vielleicht liegts ja daran.

      PHP-Code:
      function addNewUser($nummer$name
      {
                  
              
      $error true;
              
              foreach(
      $this->$userList as $key => $value
              {
                   if(
      $nummer == $key
                   {        
                        
      $error false;
                     return 
      $error
                               } 
              }
              
              
      if(
      $error
      {
      $count sizeOf($this->$newUserList);
                          
              if(
      sizeOf($this->$newUserList)) 
              {
              
      $this->$newUserList = array($nummer => $name);    
      while (list(
      $nummer$name) = each($this->$newUserList))
      echo 
      "$nummer ist $name<br>\n";
              }

          else 
          {
          
      $this->addArray($newUserList$nummer$name);    
          }
      }
              

      Kommentar


      • #4
        dir ist klar, dass du da nur ein return drinhast, dass auch nur unter bestimmten bedingungen ausgeführt wird?
        dir ist klar, dass die funktion anderenfalls nichts zurückliefert?
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Ja, das ist mir schon klar.
          Habe den Fall dass die Schleife in die False Situation kommt auch simmuliert. Ein Echo Befehlt mit der Ausgabe "False!!!" wurde auch ausgegeben. Allerdings benötige ich False innerhalb einer Variablen,
          da auf der Seite die die Darstellung übernimmt div. User die bereits
          vorhanden sind mit dieser versehen werden sollen.

          Kommentar


          • #6
            das echo steht aber nicht oben im code. solltest du mal so machen und dann nochmal überprüfen. und auch hier nochmal den aufruf der fkt posten

            Kommentar


            • #7
              Also, so sieht jetzt der Aufruf im ausführenden PHP Skript aus
              PHP-Code:
              $UserClass = new UserClass();
              .
              .
              .
              anderer Quellcode

              $ergebnis 
              $UserClass_>addNewUser($nummer$name)
              echo 
              $ergebnis
              Das Echo gibt leider nix aus!

              Kommentar


              • #8
                mach so:
                PHP-Code:
                 foreach($this->$userList as $key => $value
                        {
                             if(
                $nummer == $key
                             {        
                                  
                $error false;
                                  echo 
                "error: $error<br />";
                               return 
                $error
                                         } 
                        }
                if(
                $error
                {
                   echo 
                "no error return<br />";
                   ... 
                // code wie bisher 
                dann rufst du wie eben nochmals auf, was bekommst du?

                Kommentar


                • #9
                  okay, hab ich gemacht.
                  Echo lautet "error:"
                  also gibt er keinen Variableninhalt wieder obwohl er in die Schleife geht
                  die $error = false; setzt

                  Kommentar


                  • #10
                    hm... komisch ... hänge mal die Klasse als zip mal an.

                    Kommentar


                    • #11
                      Anbei das Zip File.
                      Angehängte Dateien

                      Kommentar


                      • #12
                        schau dir das mal an:
                        PHP-Code:
                        $this->$userList 
                        was fällt dir auf? In deiner Klasse hast du mehrere Fehler solcher Art.

                        Kommentar


                        • #13
                          Ja, ist mir bekannt,
                          sind aber keine Fehler, da der bisher gepostete
                          quellcode von mir per Hand eingetippt und leicht
                          geändert wurde. Bisher hatte da alles wunderbar funktioniert bis
                          auf diese einen Problem. Wollte es eigentlich noch zum ZIP File schreiben,
                          also... quellcode funktioniert sonst!

                          Kommentar


                          • #14
                            habe grad deine Klasse nochmals geschaut, und frage mich warum du uns Schrott zur Verfügung stellst, wo du doch Hilfe brauchst

                            Egal, wenn du sowas machst:
                            PHP-Code:
                            $ergebnis $User->addNewSmbUser(....);
                            echo 
                            $ergebnis 'true' 'false'
                            wirst du feststellen, dass die Fkt. korrekt den Wert von $error zurückgibt.

                            Kommentar


                            • #15
                              PHP-Code:
                              $ergebnis $UserClass_>addNewUser($nummer$name
                              Wieso Unterstrich?

                              Kommentar

                              Lädt...
                              X