PHP中的非ASCII字符?

PHP中的非ASCII字符?,php,serial-port,char,ascii,Php,Serial Port,Char,Ascii,我正在尝试用PHP将一些东西发送到串行端口(r232)。 我正在使用这个类: 问题是我只能发送1个字节。 但如果我发送类似“1”的内容,我实际上发送的是49(ASCII表示1)。 我没有使用send(“1”),而是尝试使用send(1),但效果不好,因为这是一个包含2个字节的整数。 那么,有没有一种方法可以发送“实”字符,而不是ASCII等效字符?该函数返回一个由相应ASCII字符的整数给定的字符。看起来库需要字符作为输入。如果需要发送编码为0x01的字符,只需发送“\001”。函数chr()将

我正在尝试用PHP将一些东西发送到串行端口(r232)。 我正在使用这个类:

问题是我只能发送1个字节。 但如果我发送类似“1”的内容,我实际上发送的是49(ASCII表示1)。 我没有使用send(“1”),而是尝试使用send(1),但效果不好,因为这是一个包含2个字节的整数。
那么,有没有一种方法可以发送“实”字符,而不是ASCII等效字符?

该函数返回一个由相应ASCII字符的整数给定的字符。

看起来库需要字符作为输入。如果需要发送编码为
0x01
的字符,只需发送“\001”。函数chr()将字符转换为整数值,在这里没有用处


还有一件事:整数的字节大小取决于底层系统,主要是4个字节。

我不确定您想要实现什么。您正在尝试发送整数1吗?由于不熟悉该类,您是否尝试将值1作为参数?如果这不起作用,试着用函数来包装它。

我感觉PHP可能不是最好的语言,我做了一些研究,但什么也没有找到。没有“真正的角色”。计算机只理解0和1,而不理解“A”、“B”或“C”。(请阅读的第一部分。它将非常详细地解释字符集。)不是这样。ord()将字符转换为整数值,chr()则相反。它返回一个字符,但作为PHP字符串。这无助于提高光电转换的精确度:
chr
将整数转换为字节。