Schönere Alternative

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

  • Schönere Alternative

    Hi gibt es denn hierfür eine schönere Lösung?
    PHP Code:
    if ($monat=="1"){$Monat="Januar";}
    if (
    $monat=="2"){$Monat="Februar";}
    if (
    $monat=="3"){$Monat="März";}
    if (
    $monat=="4"){$Monat="April";}
    if (
    $monat=="5"){$Monat="Mai";}
    if (
    $monat=="6"){$Monat="Juni";}
    if (
    $monat=="7"){$Monat="Juli";}
    if (
    $monat=="8"){$Monat="August";}
    if (
    $monat=="9"){$Monat="September";}
    if (
    $monat=="10"){$Monat="Oktober";}
    if (
    $monat=="11"){$Monat="November";}
    if (
    $monat=="12"){$Monat="Dezember";} 

  • #2
    aus der hüfte
    PHP Code:
    setlocale(LC_ALL"de"); # hier rumexperimentieren, bis die 
    # richtige abkürzung gefunden ist.
    # bei mir ist's 'ge'

    $Monat strftime('%B'strtotime('1/'.$month.'/2005')); 

    Comment


    • #3
      gehts vielleicht mit arrays. tu mich aber echt schwer mit den dingern.

      Comment


      • #4
        ne, wenn die locale ja schon auf deutsch gestellt ist, muss das datum andersrum angegeben werden:

        statt '1/'.$month.'/2005'
        PHP Code:
        $month.'/1/2005' 
        was spricht gegen diese lösung?

        mit arrays geht's auch, nur etwas länger:
        PHP Code:
        $monate = array('januar''februar' ...

        echo 
        $monate[$monat-1]; 

        Comment


        • #5
          PHP Code:
          <?php
          $monat 
          8;

          $monate = array("Januar","Februar","M&auml;rz","April","Mai",
          "Juni","Juli","August","September","Oktober","November","Dezember");

          echo 
          $monate[$monat-1]; // Gibt dir August zurückgeben

          ?>
          Simpel sollte aber funktionieren.


          // edit: schon wieder zu spät...

          Comment


          • #6
            penizilin du hast recht..sorry ....hab mein code bei sql developer
            reingestellt

            Comment


            • #7
              Bei mir (Windows & Apache und PHP5) ist folgendes richtig:
              PHP Code:
              setlocale(LC_ALL"GERMAN"); 
              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Comment


              • #8
                Bei mir (FreeBSD & PHP 5) folgendes:
                PHP Code:
                setlocale(LC_ALL"de_de"); 
                gruss
                lukasS

                Comment


                • #9
                  setlocale(LC_TIME, 'de_DE');

                  de_DE sollte korrekt sein?

                  php.net sagt:

                  http://de2.php.net/de/setlocale
                  /* versuche verschiedene mögliche locale Namen für Deutsch ab PHP 4.3.0 */
                  $loc_de = setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');
                  echo "Preferred locale for german on this system is '$loc_de'";

                  Comment


                  • #10
                    IMHO noch schöner, weil bei der Benutzung intuitiver:
                    PHP Code:
                    $monate = array(=> 'Januar'=> 'Februar', ...);

                    echo 
                    $monate[$monat];    // ohne -1 
                    So geht es natürlich auch:
                    PHP Code:
                    $monate = array(null'Januar''Februar', ...); 
                    Last edited by onemorenerd; 06-10-2005, 23:32.

                    Comment

                    Working...