it-swarm.com.de

PHP date - Name der Monate in der Landessprache abrufen

Ich habe diesen Teil der Funktion, der mir den Monatsnamen auf Englisch gibt. Wie kann ich sie in meine Landessprache (Serbisch) übersetzen?

$month_name = date('F', mktime(0, 0, 0, $i));
17
Sasha

Sie sollten setlocale() verwenden:

setlocale(LC_TIME, 'fr_FR');
$month_name = date('F', mktime(0, 0, 0, $i));

In diesem Fall würde es auf Französisch gesetzt werden. Für Ihren Fall sollte es eine der folgenden sein:

  1. sr_BA - Serbisch (Montenegro) 
  2. sr_CS - Serbisch (Serbien)
  3. sr_ME - Serbisch (Serbien und Montenegro)
24
MAXIM

Sie sollten setlocale() und strftime() verwenden:

setlocale(LC_TIME, 'sr_CS');
$month_name = strftime('%B', mktime(0, 0, 0, $i));

Es ist ratsam, die Kodierung zu übergeben, wenn Sie das Gebietsschema festlegen:

 <?php    
 date_default_timezone_set('Europe/Belgrade');
 setlocale(LC_TIME, array('sr_CS.UTF-8', 'sr.UTF-8'));
2
bodi0

Hier ist ein Beispiel mit IntlDateFormatter

$format = new IntlDateFormatter('sr_CS', IntlDateFormatter::NONE, 
              IntlDateFormatter::NONE, NULL, NULL, "MMM");
$monthName = datefmt_format($format, mktime(0, 0, 0, $i));
2
Super Chafouin