Array-Elemente als Parameter an Funktion übergeben

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

  • Array-Elemente als Parameter an Funktion übergeben

    Gibt es in PHP eine Möglichkeit, die Elemente eines Arrays als Einzelstrings an eine Funktion zu übergeben?

    D.h.
    PHP-Code:
    function Example($param1$param2) {};
    $array = array(12); 
    Nun sollen die Elemente 1 und 2 des Arrays $array an die Fkt. Example als $param1 und $param2 übergeben werden. Ist so etwas möglich?

  • #2
    http://de2.php.net/manual/de/functio...func-array.php
    Slava
    bituniverse.com

    Kommentar


    • #3
      list.
      Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

      Kommentar


      • #4
        warum nicht einfach so:

        Example($array[0], $array[1]);

        Kommentar


        • #5
          oder http://de3.php.net/manual/de/functio...func-array.php

          *edit* ach, sorry, doppelt..
          Zuletzt geändert von combie; 30.09.2007, 21:25.
          Wir werden alle sterben

          Kommentar


          • #6
            Danke, Slavas Hinweis hat vollkommen gereicht.

            @3DMax: Weil die Array-Elemente automatisch übergeben werden müssen, egal wie lang das Array ist.

            Kommentar


            • #7
              Original geschrieben von hasch
              @3DMax: Weil die Array-Elemente automatisch übergeben werden müssen, egal wie lang das Array ist.
              Wie sinnvoll ist es eine Funktion mit einer variablen Anzahl an Parametern zu erstellen?

              Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

              bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
              Wie man Fragen richtig stellt

              Kommentar


              • #8
                Original geschrieben von ghostgambler
                Wie sinnvoll ist es eine Funktion mit einer variablen Anzahl an Parametern zu erstellen?
                Das dürfte wohl von Sinn und Zweck der Funktion abhängen.
                Nieder mit der Camel Case-Konvention

                Kommentar


                • #9
                  Original geschrieben von Griecherus
                  Das dürfte wohl von Sinn und Zweck der Funktion abhängen.
                  Ich sehe keinen Sinn darin ein Array in einzelne Parameter aufzusplitten, um danach per Parameter-Funktionen das ganze wieder intern in ein Array abzubilden... egal welchen Sinn die Funktion hat.

                  Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                  bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                  Wie man Fragen richtig stellt

                  Kommentar


                  • #10
                    Wie sinnvoll ist es eine Funktion mit einer variablen Anzahl an Parametern zu erstellen?
                    z.b. min oder max??

                    Kommentar


                    • #11
                      PHP-Code:
                      example_function(implode(', '$array)); 
                      Das Array darf allerdings nicht mehr Elemente enthalten, als die Funktion Parameter akzeptiert.
                      Original geschrieben von ghostgambler
                      ... um danach per Parameter-Funktionen das ganze wieder intern in ein Array abzubilden...
                      Das muss ja auch nicht sein. Es kann ja sein, dass die Parameter in der Funktion mit Default-Werten definiert werden. Je nachdem, wieviele dieser Werte ünerschrieben werden sollen, ist der Array kürzer oder länger.
                      Ich persönlich würde es allerdings vorziehen, einen Parameter zu definieren, diesem das Array zu übergeben und ihn dann in der Funktion zu bearbeiten.
                      Gruss
                      H2O

                      Kommentar


                      • #12
                        Original geschrieben von PHP-Desaster
                        z.b. min oder max??
                        Nur existieren die halt schon
                        Und auch da kann man ja ein Array übergeben.

                        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                        Wie man Fragen richtig stellt

                        Kommentar


                        • #13
                          Original geschrieben von H2O
                          PHP-Code:
                          example_function(implode(', '$array)); 
                          Das Array darf allerdings nicht mehr Elemente enthalten, als die Funktion Parameter akzeptiert.
                          HÖ?
                          Weißt du was ein String ist? Implode gibt einen STRING zurück!

                          PHP-Code:
                          <?php


                          $par 
                          = array("test""test2");

                          function 
                          test($par1$par2 "falsch") {
                              echo 
                          $par1 "\n" $par2;
                          }

                          test(implode(', '$par));
                          Code:
                          X-Powered-By: PHP/5.2.0
                          Content-type: text/html
                          
                          test, test2
                          falsch
                          Heißt soviel wie - funktioniert (natürlich) nicht über implode.

                          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                          Wie man Fragen richtig stellt

                          Kommentar


                          • #14
                            Original geschrieben von ghostgambler
                            Heißt soviel wie - funktioniert (natürlich) nicht über implode.
                            Da hast du völlig Recht, ich muss grad ein Blackout gehabt haben.
                            Gruss
                            H2O

                            Kommentar

                            Lädt...
                            X