如何设置PHP套接字写入和套接字读取字符编码?
我正在编写一个PHP服务器,客户端正在以特定的字符编码发送数据。现在,我想告诉服务器以相同的字符编码集读取和写入数据如何设置PHP套接字写入和套接字读取字符编码?,php,sockets,character-encoding,Php,Sockets,Character Encoding,我正在编写一个PHP服务器,客户端正在以特定的字符编码发送数据。现在,我想告诉服务器以相同的字符编码集读取和写入数据 如何为PHP和方法指定字符编码集?这些函数传输未转换的字符串(即逐字节),因此无法设置字符编码。但这也意味着,你不必这么做。您将在另一侧使用完全相同的编码使用完全相同的字符串 您可以使用在发送字符串之前/接收字符串之后对其进行转换。PHP几乎没有自动字符编码支持。您必须跟踪任何给定字符串的编码方式,并确保每次输入或输出代码时都将其转换为适当的编码方式。这样做的一个好方法是确定所有
如何为PHP和方法指定字符编码集?这些函数传输未转换的字符串(即逐字节),因此无法设置字符编码。但这也意味着,你不必这么做。您将在另一侧使用完全相同的编码使用完全相同的字符串
您可以使用在发送字符串之前/接收字符串之后对其进行转换。PHP几乎没有自动字符编码支持。您必须跟踪任何给定字符串的编码方式,并确保每次输入或输出代码时都将其转换为适当的编码方式。这样做的一个好方法是确定所有内部字符串都采用某种编码(如PHP),并在输入时将每个传入字符串转换为该编码
(或使用另一种语言)我明白这一点。但是,当服务器发送数据时,它将以什么字符编码集执行此操作?如何设置此默认字符编码?它在字符串的字符集中发送。嗯。。。以下字符串可以是Unicode,也可以是UTF-8:“hello”。那么我如何让它从两个中选择一个呢?或者,当我设置字符串时$string=“hello”-如何使它以特定的编码设置字符串?如果您编写$string=“hello”,它将具有语句所在的源文件的编码。您的“hello”-示例表明您需要更多关于字符编码的背景信息(utf8是unicode变体)。我建议: