setlocale
(PHP 4, PHP 5)
setlocale — Ρυθμίστε τις πληροφορίες του locale
Περιγραφή
Η παράμετρος category είναι μία σταθερά (ή string) που ορίζει την κατηγορία των συναρτήσεων, οι οποίες επηρεάζονται από τη ρύθμιση του locale:
- LC_ALL για όλες τις παρακάτω
- LC_COLLATE για σύγκριση strings, ανατρέξτε στη συνάρτηση strcoll()
- LC_CTYPE για κατάταξη χαρακτήρων και μετατροπή, για παράδειγμα η συνάρτηση strtoupper()
- LC_MONETARY για τη συνάρτηση localeconv()
- LC_NUMERIC για το διαχωριστή δεκαδικού μέρους (ανατρέξτε επίσης στη συνάρτηση localeconv())
- LC_TIME για μορφοποίηση ημερομηνίας και ώρας με τη συνάρτηση strftime()
Εάν η παράμετρος locale είναι ένα κενό string "", τα ονόματα της θα τεθούν από τις τιμές των μεταβλητών περιβάλλοντος που έχουν τα ίδια ονόματα με τις παραπάνω κατηγορίες, ή από το "LANG".
Εάν η παράμετρος locale είναι NULL ή "0", η ρύθμιση του locale δεν επηρεάζεται, μόνο η τρέχουσα ρύθμιση επιστρέφεται.
Εάν η παράμετρος locale είναι ένας πίνακας ή ακολουθείται από επιπλέον παραμέτρους τότε γίνεται προσπάθεια, μέχρι να επιτευχθεί, ώστε κάθε στοιχείο του πίνακα ή παράμετρος να τεθεί ως νέο locale. Η λειτουργία αυτή είναι χρήσιμη εάν ένα locale είναι γνωστό με διάφορα ονόματα σε διαφορετικά συστήματα ή για να παράσχει λύση στην περίπτωση που δεν είναι διαθέσιμο.
Note: Το πέρασμα διαφορετικών locales δεν ήταν διαθέσιμο πριν την PHP 4.3.0
Η συνάρτηση setlocale επιστρέφει το νέο ισχύον locale, ή την τιμή FALSE εάν δεν έχει εγκατασταθεί λειτουργία locale στην πλατφόρμα σας ή το συγκεκριμένο locale δεν υπάρχει ή ακόμα κα αν το όνομα της κατηγορίας είναι λάθος. Ένα όνομα λάθος κατηγορίας μπορεί να προκαλέσει την εμφάνιση μηνύματος λάθους. Ονόματα κατηγοριών/locale μπορούν να βρεθούν στις ενότητες » RFC 1766 and » ISO 639.
Note: Η επιστρεφόμενη τιμή της συνάρτησης setlocale() εξαρτάται από το σύστημα στο οποίο τρέχει η PHP. Επιστρέφει ακριβώς ό,τι και η setlocale του συστήματος.
Η χρήστες των Windows θα βρουν χρήσιμες πληροφορίες για τα locale strings στο MSDN website της Microsoft. Τα υποσστηριζόμενα strings γλώσσας μπορούν να βρεθούν » εδώ και τα υποστηριζόμενα strings χώρας/περιοχής » εδώ. Τα συστήματα Windows υποστηρίζουν τους κώδικες τριών γραμμάτων για τις χώρες/περιοχές όπως αυτοί ορίζονται από το ISO 3166-Alpha-3, το οποίο μπορεί να βρεθεί στο website της » Unicode.
Example#1 Παραδείγματα χρήσης της setlocale()
<?php
/* Set locale to Dutch */
setlocale (LC_ALL, 'nl_NL');
/* Output: vrijdag 22 december 1978 */
echo strftime ("%A %e %B %Y", mktime (0, 0, 0, 12, 22, 1978));
/* try different possible locale names for german as of 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'";
?>
Example#2 Παράδειγμα χρήσης της setlocale() στα Windows
<?php
/* Set locale to Dutch */
setlocale (LC_ALL, 'nld_nld');
/* Output: vrijdag 22 december 1978 */
echo strftime ("%A %d %B %Y", mktime (0, 0, 0, 12, 22, 1978));
/* try different possible locale names for german as of PHP 4.3.0 */
$loc_de = setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'deu_deu');
echo "Preferred locale for german on this system is '$loc_de'";
?>