PHP,将UTF-8转换为ASCII 8位

PHP,将UTF-8转换为ASCII 8位,php,encoding,utf-8,ascii,iconv,Php,Encoding,Utf 8,Ascii,Iconv,我试图使用iconv函数将字符串从UTF-8转换为ASCII 8位。该字符串用于导入会计软件(根据SIE标准解析的一些基本指令) 我现在运行的是: iconv("UTF-8", "ASCII", $this->_output) 这适用于会计软件#1,但软件#2抱怨编码。标准指定的编码是:IBM PC 8位扩展ASCII(代码页437) 我的问题是,PHP将我的字符串编码为哪种版本的ASCII,如果没有指定,我如何根据标准规范对字符串进行编码?请在软件中尝试这一点#2 扩展ASCII与普通

我试图使用
iconv
函数将字符串从UTF-8转换为ASCII 8位。该字符串用于导入会计软件(根据SIE标准解析的一些基本指令)

我现在运行的是:

iconv("UTF-8", "ASCII", $this->_output)
这适用于会计软件#1,但软件#2抱怨编码。标准指定的编码是:
IBM PC 8位扩展ASCII(代码页437)

我的问题是,PHP将我的字符串编码为哪种版本的ASCII,如果没有指定,我如何根据标准规范对字符串进行编码?

请在软件中尝试这一点#2

扩展ASCII与普通ASCII不同。 第一个软件可能接受ASCII码,但第二个软件需要扩展ASCII码页437


请参见此

字符串中的字符类型?如果只有前128个代码点的字符,则UTF-8已经与ASCII相同。如果里面还有其他字符,那么你就丢弃了很多信息/字符。这是一个兼容性问题。导入软件将遵循SIE标准,因此仅接受ASCII扩展。谢谢,软件#2不再对编码发出警告。此外,一些导入软件要求换行符使用回车符。SIE标准不要求这样做-但为了确保导出兼容,请对新行使用“\r\n”。
iconv("UTF-8", "CP437", $this->_output);