Ho questa parte della funzione, che mi dà il nome dei mesi in inglese. Come posso tradurli nella mia lingua locale (serbo)?Data PHP: consente di ottenere il nome dei mesi nella lingua locale
$month_name = date('F', mktime(0, 0, 0, $i));
Ho questa parte della funzione, che mi dà il nome dei mesi in inglese. Come posso tradurli nella mia lingua locale (serbo)?Data PHP: consente di ottenere il nome dei mesi nella lingua locale
$month_name = date('F', mktime(0, 0, 0, $i));
Si dovrebbe usare setlocale()
:
setlocale(LC_TIME, 'fr_FR');
$month_name = date('F', mktime(0, 0, 0, $i));
In questo caso sarebbe impostarlo a Francese. Per il vostro caso dovrebbe essere uno dei seguenti:
sr_BA
- Serbia (Montenegro)sr_CS
- Serbia (Serbia)sr_ME
- Serbia (Serbia e Montenegro)Grazie per il vostro aiuto :) – Sasha
Il mio 'date' è locale inconsapevole, il mio' strftime' non lo è. Se il tuo è locale consapevole ... qual è la tua versione di PHP? – Wrikken
Ma si noti che ['setlocale' imposta il processo locale largo] (http://php.net/manual/en/function.setlocale.php#refsect1-function.setlocale-notes) (causando un comportamento imprevisto con più thread durante l'utilizzo multi-threading). Thread alternativa sicura: [IntlDateFormatter] (http://php.net/manual/en/class.intldateformatter.php) – Matmarbon
È dovrebbe utilizzare setlocale()
e strftime()
:
setlocale(LC_TIME, 'sr_CS');
$month_name = strftime('%B', mktime(0, 0, 0, $i));
ha problemi con il fuso orario sull'oggetto datetime se si utilizza setTimezone() e si usa getTimestamp() – Thanatos11th
questo lavoro per me, purtroppo sulla mia macchina 'setLocale()' non influenza 'date()' –
Ecco un esempio con IntlDateFormatter
$format = new IntlDateFormatter('sr_CS', IntlDateFormatter::NONE,
IntlDateFormatter::NONE, NULL, NULL, "MMM");
$monthName = datefmt_format($format, mktime(0, 0, 0, $i));
E 'buona idea per passare il codifica quando l'impostazione della localizzazione:
<?php
date_default_timezone_set('Europe/Belgrade');
setlocale(LC_TIME, array('sr_CS.UTF-8', 'sr.UTF-8'));
'strftime' e installare la corretta localizzazione, e impostare la locale corrente al serbo . – Wrikken