/ / Howto set PHP socket_write e socket_read codificação de caracteres? - php, sockets, codificação de caracteres

Como definir a codificação de caracteres socket_write e socket_read do PHP? - php, sockets, codificação de caracteres

Eu estou escrevendo um servidor PHP eo cliente está enviando dados em uma codificação de caracteres específica.Agora, eu quero dizer ao servidor para ler e gravar dados neste mesmo conjunto de codificação de caracteres.

Como devo especificar o conjunto de codificação de caracteres para PHP? socket_read e socket_write métodos?

Respostas:

2 para resposta № 1

Essas funções transmitem a string não convertida(ou seja, byte by byte), então você não pode definir uma codificação de caracteres. Mas isso significa também que você não precisa. Você terá exatamente a mesma string do outro lado com a mesma codificação.

Você pode convertê-lo antes de enviar / depois de receber a string usando mb_convert_encoding().


1 para resposta № 2

PHP tem quase zero caractere automáticosuporte de codificação. Você terá que manter o controle de qual codificação é qualquer string e certificar-se de que ela seja convertida para a codificação apropriada toda vez que ela entrar ou deixar seu código. Uma boa maneira de fazer isso é decidir que todas as strings estão em uma certa codificação ( por exemplo, PHP) e converter todas as strings de entrada para essa codificação em seu caminho.

(Ou use um idioma diferente)