downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mb_language> <mb_http_output
Last updated: Fri, 14 Aug 2009

view this page in

mb_internal_encoding

(PHP 4 >= 4.0.6, PHP 5)

mb_internal_encodingLit/modifie l'encodage interne

Description

mixed mb_internal_encoding ([ string $encoding= mb_internal_encoding() ] )

Lit/modifie l'encodage interne.

Liste de paramètres

encoding

encoding sert lors des conversions des chaînes en provenance et en direction du web, ainsi que lors de la création de chaînes avec le module mbstring.

Valeurs de retour

Si encoding est fourni, Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec. Si encoding est omis, mb_internal_encoding() retourne le nom de l'encodage courant.

Exemples

Exemple #1 Exemple avec mb_internal_encoding()

<?php
/* Utilise l'encodage interne UTF-8 */
mb_internal_encoding("UTF-8");

/* Affiche l'encodage interne courant */
echo mb_internal_encoding();
?>

Notes

Note: L'encodage interne ou l'encodage des caractères spécifié par la fonction mb_regex_encoding() sera utilisé comme encodage de caractères pour cette fonction.

Voir aussi



mb_language> <mb_http_output
Last updated: Fri, 14 Aug 2009
 
add a note add a note User Contributed Notes
mb_internal_encoding
mdirks at gulfstreamcoach dot com
17-May-2007 03:55
In response to mortoray at ecircle-ag dot com:

The characters display fine as long as you set the Encoding to something more "Latin 1" compatible (i.e. US-ACSII, ISO-8859-1, ISO-8859-1, or  Windows 1252). PHP.net auto-detects to UTF-8
Joachim Kruyswijk
25-May-2006 07:52
Especially when writing PHP scripts for use on different servers, it is a very good idea to explicitly set the internal encoding somewhere on top of every document served, e.g.

mb_internal_encoding("UTF-8");

This, in combination with mysql-statement "SET NAMES 'utf8'", will save a lot of debugging trouble.

Also, use the multi-byte string functions instead of the ones you may be used to, e.g. mb_strlen() instead of strlen(), etc.
mortoray at ecircle-ag dot com
27-May-2005 11:10
To previous example, the PHP notes don't appear to support umlauted characters so there are question marks  (?) there instead of what should be umlauated oue.  Just substitute any high-order/accented character to see the effect.
mortoray at ecircle-ag dot com
27-May-2005 06:58
Be aware that the strings in your source files must match the encoding you specify by mb_internal_encoding.  It appears the Parser loads raw bytes from the file and refers to its internal encoding to determine their actual encoding.

To demonstrate, the following outputs as espected when the /source/ file is Latin-1 encoded:

<?php
    mb_internal_encoding
("iso-8859-1");
   
mb_http_output( "UTF-8" );
   
ob_start("mb_output_handler");

    echo
"üöä<br/>";

   
?>üöä

Now, a typical use of mb_internal_encoding is shown as follows.  Make the change to "utf-8" but leave the /source/ file encoding unchanged:

<?php
    mb_internal_encoding
("UTF-8");
   
mb_http_output( "UTF-8" );
   
ob_start("mb_output_handler");

    echo
"üöä<br/>";

   
?>üöä

The output will just show the <br/> tag and no text.

Save the file as UTF-8 encoding and then the results will be as expected.

mb_language> <mb_http_output
Last updated: Fri, 14 Aug 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites