Bug #76513 [Com]: locale for day of week

From: Date: Thu, 04 Mar 2021 03:25:46 +0000
Subject: Bug #76513 [Com]: locale for day of week
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-232525@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=76513&edit=1 ID: 76513 Comment by: unicolo91 at gmail dot com Reported by: jluc at no-log dot org Summary: locale for day of week Status: Not a bug Type: Bug Package: *General Issues Operating System: linux PHP Version: 7.2.6 Assigned To: cmb Block user comment: N Private report: N New Comment: i agree, Further tests on my local machine showed, i have to write setlocale("fr_FR.utf8"); This works. (instead of plain "fr_FR") it's really annoying https://unicorncoloringpages.co Previous Comments: ------------------------------------------------------------------------ [2018-06-24 10:53:23] cmb@php.net From the docs[1]: | If locale is an array or followed by additional parameters then | each array element or parameter is tried to be set as new locale | until success. This is useful if a locale is known under different | names on different systems or for providing a fallback for a | possibly not available locale. Also check the return value of setlocale() to see whether it failed, and act appropriately. [1] <http://php.net/manual/en/function.setlocale.php> ------------------------------------------------------------------------ [2018-06-23 22:08:57] jluc at no-log dot org I tried also on various php online sandboxes : WRONG : https://wtools.io/php-sandbox -> 7.2.3 in French Saturday andbool(false) http://sandbox.onlinephpfunctions.com/ -> 7.2.4 in French Saturday andbool(false) https://3v4l.org/qfWTr-> 7.3.0alpha1 in French Saturday andbool(false) RIGHT : http://www.writephponline.com/-> 7.0.30 in French samedi andstring(5) "fr_FR" If i understand well the issue is with setlocale's parameter. Further tests on my local machine showed, i have to write setlocale("fr_FR.utf8"); This works. (instead of plain "fr_FR") This syntax is mentionned in some comments of https://secure.php.net/manual/fr/function.setlocale.php but not in the official doc itself. Shouldnt that be explained ? Is that a portable and safe way to go ? ------------------------------------------------------------------------ [2018-06-23 21:46:20] jluc at no-log dot org On my locale machine here are the results : $ locale -a | grep fr fr_BE.utf8 fr_CA.utf8 fr_CH.utf8 fr_FR.utf8 fr_LU.utf8 $ php -f str.php 7.1.17-0ubuntu0.17.10.1 in French Saturday andbool(false) (i added echo phpversion() to your proposed script) ------------------------------------------------------------------------ [2018-06-21 14:50:26] danack@php.net I can't reproduce this issue. Please could you run on the command line: ``` locale -a | grep fr ``` and also run ``` $result = setlocale(LC_TIME, "fr_FR"); echo strftime(" in French %A and"); var_dump($result); ``` and give the output for both. The simplest explanation would be that the fr_FR locale is not available on your system for whatever reason. ------------------------------------------------------------------------ [2018-06-21 14:07:19] jluc at no-log dot org Description: ------------ --- From manual page: http://www.php.net/function.strftime --- "Format the time and/or date according to locale settings. Month and weekday names and other language-dependent strings respect the current locale set with setlocale()." BUT day of week are allways english, whatever the locale The given example is : setlocale(LC_TIME, "fr_FR"); echo strftime(" in French %A and"); but the output is not displayed in http://www.php.net/function.strftime AMOF, output is in French Thursday and Thu Which is not the expected : "in French Jeudi and Jeu" Expected result: ---------------- Either documentation is wrong and setlocale is not efficient with dayofweeks names Either this is a bug Anyway, the output for this example should be included in the documentation (not only the PHP source) as it's done for other examples. ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=76513&edit=1

« previous php.bugs (#232525) next »