array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'function.mb-detect-order.php', 1 => 'mb_detect_order', ), 'up' => array ( 0 => 'ref.mbstring.php', 1 => 'Funciones de cadenas de caracteres multibyte', ), 'prev' => array ( 0 => 'function.mb-detect-encoding.php', 1 => 'mb_detect_encoding', ), 'next' => array ( 0 => 'function.mb-encode-mimeheader.php', 1 => 'mb_encode_mimeheader', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/mbstring/functions/mb-detect-order.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_detect_order — Establece/obtiene el orden de detección de codificaciones de caracteres
Establece el orden de detección automática
de la codificación de caracteres a encoding_list
.
encoding_list
encoding_list
es un array o una
lista de codificaciones de caracteres separadas por comas. Véanse las codificaciones admitidas.
Si se omite encoding_list
, devolverá
el orden actual de detección de las codificaciones de caracteres como un array.
Este parámetro afecta a mb_detect_encoding() y a mb_send_mail().
mbstring
actualmente implementa los siguientes
filtros de detección de codificaciones. Si existiera una secuencia de bytes inválida
para las siguientes codificaciones, la detección de la codificación fallará.
UTF-8
, UTF-7
,
ASCII
,
EUC-JP
,SJIS
,
eucJP-win
, SJIS-win
,
JIS
, ISO-2022-JP
Para ISO-8859-*
, mbstring
siempre lo detecta como ISO-8859-*
.
Para UTF-16
, UTF-32
,
UCS2
y UCS4
, la detección
de la codificación siempre fallará.
Al establecer el orden de detección de codificación, se devuelve true
en caso de éxito o false
en caso de fallo.
Al obtener el orden de detección de codificación, se devuelve un array ordenado con las codificaciones.
Ejemplo #1 Ejemplo de mb_detect_order()
<?php
/* Establecer el orden de detección mediante una lista enumerada */
mb_detect_order("eucjp-win,sjis-win,UTF-8");
/* Establecer el orden de detección mediante un array */
$ary[] = "ASCII";
$ary[] = "JIS";
$ary[] = "EUC-JP";
mb_detect_order($ary);
/* Mostrar el orden de detección en uso */
echo implode(", ", mb_detect_order());
?>
Ejemplo #2 Ejemplo mostrando un orden de detección inútil
; Siempre es detectado como ISO-8859-1 detect_order = ISO-8859-1, UTF-8 ; Siempre es detectado como UTF-8, ya que los valores ASCII/UTF-7 son ; válidos para UTF-8 detect_order = UTF-8, ASCII, UTF-7