[Funktion] variable Parameterzahl [Variablen] Bezeichnungen in Funktion beibehalten

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [Funktion] variable Parameterzahl [Variablen] Bezeichnungen in Funktion beibehalten

    Hallo Leute,

    ich habe eine Funktion mit einer variablen Anzahl an Paramtern erstellt. Zu diesem Zweck nutze ich func_get_arg();
    Ich möchte mit der Funktion automatisch eine Cache-Datei erstellen, in der die übergebenen Variablen und deren Werte abgelegt sind. Nun möchte ich aber, dass die Bezeichnungen der übergebenen Variablen in der Funktion beibehalten werden. Dies sollte in etwa so aussehen:

    Skript
    PHP Code:
    <?php

    $str1 
    "a";
    $str2 "b";
    $str3 "c";

    cache_write($str1$str2$str3);

    ?>
    erstellte Datei
    PHP Code:
    <?php

    $str1 
    "a";

    $str2 "b";

    $str3 "c";

    ?>
    Wie muss dazu die Funktion cache_write() aussehen bzw. welche Befehle kann ich benutzen, um z.B. von func_get_arg(0) auf die Bezeichnung der ursprünglichen Variable zzu schließen?

    arrays sind klasse

  • #2
    Keine, du kannst höchstens die Bezeichner extra übergeben
    Ich denke, also bin ich. - Einige sind trotzdem...

    Comment


    • #3
      Na dann hoffe ich zumindest, dass dies ab php6 möglich sein wird
      arrays sind klasse

      Comment


      • #4
        Warum?

        Ich wüsste keinen Grund, warum ich wissen müssen sollte, wie die Variablen, die der Funktion übergeben werden im aufrufendenTeil heißen...

        Vor allem:
        PHP Code:
        echo summe($parameter_15); 
        was wolltest du als Name für den zweiten Prameter ermitteln?
        Ich denke, also bin ich. - Einige sind trotzdem...

        Comment


        • #5
          Aus welchem Grunde wurde mein letztes Posting gelöscht (, dass an dieser Stelle stand) ?

          Ist denn die Idee eines PHP-Befehls so abwegig, der die Bezeichung einer (dynamischen) Variable zurückgeben soll, ohne deren Wert zu berühren?

          PHP Code:
          <?php
          $meine_variable 
          "super";
          $bezeichnung get_var_name($meine_variable); /// <-- erfundene Funktion

          echo $meine_variable "<br>";
          echo 
          $bezeichnung;
          ?>
          ergibt:
          super
          meine_variable

          arrays sind klasse

          Comment


          • #6
            Original geschrieben von Maranello-550
            Aus welchem Grunde wurde mein letztes Posting gelöscht (, dass an dieser Stelle stand) ?
            weil ich's verbockt habe, sorry


            PHP Code:
            $a 5;
            $array = array('a' => $a);

            function do(
            $param) {
              
            $keys array_keys($param);
              echo 
            '$'.$key[0].' hat den Wert: '.$param[$key[0]];

            das könnte gehen oder du suchst in $GLOBALS per array_search nach dem Wert des Parameters

            Die Idee ist abwegig, da das eigentlich dem Prinzip von Funktionen widerspricht
            Ich denke, also bin ich. - Einige sind trotzdem...

            Comment


            • #7


              in dem fall wäre für mich das einfachste die bezeichnung als nachfolgendes parameter der eigentlichen variable zu definieren:
              meine_funktion($str1, "bezeichnung1", $str2, "bezeichnung2", $str3, "bezeichnung3");
              arrays sind klasse

              Comment

              Working...
              X