# String Multibyte

# Introdução

Embora existam muitas linguagens nas quais cada caractere necessário pode ser representado por um mapeamento de um para um para um valor de 8 bits, há também várias linguagens que exigem tantos caracteres para a comunicação escrita que não podem ser contidos dentro da faixa que um simples byte pode codificar (um byte é composto por oito bits. Cada bit pode conter apenas dois valores distintos, um ou zero. Devido a isso, um byte só pode representar 256 valores únicos (dois elevado à potência de oito)). Esquemas de codificação de caracteres multibyte foram desenvolvidos para expressar mais de 256 caracteres no sistema de codificação de bytes regular.

Ao manipular (cortar, dividir, emendar, etc.) strings codificadas em uma codificação multibyte, você precisa usar funções especiais, pois dois ou mais bytes consecutivos podem representar um único caractere em tais esquemas de codificação. Caso contrário, se você aplicar uma função de string que não é sensível a multibyte à string, ela provavelmente falhará em detectar o início ou o final do caractere multibyte e acabará com uma string corrompida e inútil que provavelmente perde seu significado original.

`mbstring` fornece funções de string específicas para multibyte que ajudam a lidar com codificações multibyte em PHP. Além disso, `mbstring` lida com a conversão de codificação de caracteres entre os pares de codificação possíveis. `mbstring` é projetada para lidar com codificações baseadas em Unicode, como UTF-8 e UCS-2, e muitas codificações de byte único por conveniência (listadas em Codificações de Caracteres Suportadas).

- Instalação/Configuração
  - Instalação
  - Configurações em Execução
- Constantes predefinidas
- Sumários de Codificações Suportadas
- Noções Básicas de Codificações Multibyte Japonesas
- Entrada e Saída HTTP
- Codificações de Caracteres Suportadas
- Recurso de Sobrecarga de Funções
- Requisitos de Codificação de Caracteres em PHP
- Strings Multibyte e Funções
  - mb_check_encoding — Verifica se as strings são válidas para a codificação especificada
  - mb_chr — Retorna um caractere pelo valor do ponto de código Unicode
  - mb_convert_case — Realiza a conversão de caixa em uma string
  - mb_convert_encoding — Converte uma string de uma codificação de caracteres para outra
  - mb_convert_kana — Converte "kana" de um tipo para outro ("zen-kaku", "han-kaku" e mais)
  - mb_convert_variables — Converte o código de caracteres em variável(is)
  - mb_decode_mimeheader — Decodifica string no campo de cabeçalho MIME
  - mb_decode_numericentity — Decodifica referência de string numérica HTML para caractere
  - mb_detect_encoding — Detectar a codificação de caracteres
  - mb_detect_order — Define ou obtém a ordem de detecção de codificação de caracteres
  - mb_encode_mimeheader — Codificar string para cabeçalho MIME
  - mb_encode_numericentity — Codificar caractere para referência numérica HTML
  - mb_encoding_aliases — Obtém aliases de um tipo de codificação conhecido
  - mb_ereg — Correspondência de expressão regular com suporte multibyte
  - mb_ereg_match — Coincidência de expressão regular para string multibyte
  - mb_ereg_replace — Substituir expressão regular com suporte a multibyte
  - mb_ereg_replace_callback — Realiza uma busca e substituição de expressão regular com suporte a string multibyte usando um callback
  - mb_ereg_search — Correspondência de expressão regular multibyte para uma string multibyte predefinida
  - mb_ereg_search_getpos — Retorna o ponto de início para a próxima correspondência de expressão regular
  - mb_ereg_search_getregs — Recupera o resultado da última correspondência de expressão regular multibyte
  - mb_ereg_search_init — Configura a string e a expressão regular para uma correspondência de expressão regular multibyte
  - mb_ereg_search_pos — Retorna a posição e o comprimento de uma parte correspondida da expressão regular multibyte para uma string multibyte predefinida
  - mb_ereg_search_regs — Retorna a parte correspondida de uma expressão regular multibyte
  - mb_ereg_search_setpos — Define o ponto de início para a próxima correspondência de expressão regular
  - mb_eregi — Correspondência de expressão regular sem diferenciar maiúsculas e minúsculas com suporte multibyte
  - mb_eregi_replace — Substituir expressão regular com suporte multibyte, ignorando maiúsculas e minúsculas
  - mb_get_info — Obtém configurações internas do mbstring
  - mb_http_input — Detecta a codificação de caracteres de entrada HTTP
  - mb_http_output — Define/Obtém a codificação de caracteres de saída HTTP
  - mb_internal_encoding — Define/Obtém a codificação de caracteres interna
  - mb_language — Define/Obtém o idioma atual
  - mb_lcfirst — Converte parap minúscula o primeiro caractere de uma string
  - mb_list_encodings — Retorna um array de todas as codificações suportadas
  - mb_ltrim — Remove espaços em branco (ou outros caracteres) do início de uma string
  - mb_ord — Obtém o ponto de código Unicode do caractere
  - mb_output_handler — Callback converte a codificação de caracteres no buffer de saída
  - mb_parse_str — Analisa dados GET/POST/COOKIE e define variável global
  - mb_preferred_mime_name — Obter uma string MIME charset
  - mb_regex_encoding — Define/Obtém codificação de caracteres para regex multibyte
  - mb_regex_set_options — Define/Obtém as opções padrão para funções mbregex
  - mb_rtrim — Remove espaços em branco (ou outros caracteres) do final de uma string
  - mb_scrub — Substitui sequências de bytes malformadas pelo caractere substituto
  - mb_send_mail — Envia email codificado
  - mb_split — Divide uma string multibyte usando expressão regular
  - mb_str_pad — Preenche uma string multibyte para um comprimento específico com outra string multibyte
  - mb_str_split — Dada uma string multibyte, retorna um array de seus caracteres
  - mb_strcut — Obtém parte da string
  - mb_strimwidth — Obtém string truncada com largura especificada
  - mb_stripos — Encontra a posição da primeira ocorrência de uma string dentro de outra, sem diferenciar maiúsculas de minúsculas
  - mb_stristr — Encontra a primeira ocorrência de uma string dentro de outra, sem diferenciar maiúsculas de minúsculas
  - mb_strlen — Obtém o comprimento da string
  - mb_strpos — Encontra a posição da primeira ocorrência de uma string em outra
  - mb_strrchr — Encontra a última ocorrência de um caractere em uma string dentro de outra
  - mb_strrichr — Encontra a última ocorrência de um caractere em uma string dentro de outra, sem diferenciar maiúsculas de minúsculas
  - mb_strripos — Encontra a posição da última ocorrência de uma string em outra, sem diferenciar maiúsculas de minúsculas
  - mb_strrpos — Encontra a posição da última ocorrência de uma string em outra string
  - mb_strstr — Encontra a primeira ocorrência de uma string em outra
  - mb_strtolower — Torna uma string minúscula
  - mb_strtoupper — Faz uma string ficar em maiúsculas
  - mb_strwidth — Retorna a largura da string
  - mb_substitute_character — Define/Obtém caractere de substituição
  - mb_substr — Obtém parte da string
  - mb_substr_count — Conta o número de ocorrências de substring
  - mb_trim — Remove espaços em branco (ou outros caracteres) do início e do final de uma string
  - mb_ucfirst — Converte para maiúscula o primeiro caractere de uma string

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open