草庐IT

php - 如何在没有 ord() 的情况下在 PHP 中将字符串转换为 ASCII 值?

我希望将字符串say'Hello'world转换为其在php中的ASCII值。但我不想使用ord()。是否有任何其他解决方案可以在不使用ord()的情况下打印ascii值? 最佳答案 unpack()Unpacksfromabinarystringintoanarrayaccordingtothegivenformat.使用formatC*返回您从ord()获得的所有内容。print_r(unpack("C*","Helloworld"));Array([1]=>72[2]=>101[3]=>108[4]=>108[5]=>111[

php - 为什么 PHP substr() 改变 ASCII 回车字节?

我打算用一个长字符串来操作大量的位标志,将结果字符串保存在Redis中。但是,偶然发现了一个php错误(?)。使用substr()读取的包含位00001101的字节返回意外值:$bin=0b00001101;//13-ASCIICarriagereturn$c=substr($bin,0,1);//readthischaracterprintf("Expectation:00001101,reality:%08b\n",$c);//00000001Ideonesubstr()是二进制安全的假设是错误的吗?还尝试了mb_substr(),将编码设置为8bit,结果完全相同。

php - 如何用 PHP 将 UTF-8 字符替换为外观相似的 ASCII 字符?

我对Unicode有疑问。我需要一个PHP函数来转换字符串:Xinchàotấtcảcácbạn.Mìnhkhôngbiếttiếnganh.收件人:Xinchaotatcacacban.Minhkhongbiettienganh.谁能帮帮我? 最佳答案 使用iconv使用//TRANSLIT修饰符:$str1="Xinchàotấtcảcácbạn.Mìnhkhôngbiếttiếnganh.";$str2=iconv("UTF-8","ASCII//TRANSLIT",$str1);print($str1.PHP_EOL.$st

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

我正在尝试使用iconv函数将字符串从UTF-8转换为ASCII8位。该字符串旨在导入会计软件(根据SIE标准解析的一些基本指令)。我现在正在运行的是:iconv("UTF-8","ASCII",$this->_output)这适用于会计软件#1,但软件#2提示编码问题。标准规定的编码是:IBMPC8-bitextendedASCII(Codepage437)。我的问题是,PHP将我的字符串编码成哪个版本的ASCII,如果不是指定的-我如何根据标准规范对字符串进行编码? 最佳答案 为软件#2试试这个iconv("UTF-8","CP

PHP 将 unicode 空格转换为 ascii 空格

所以我遇到了一个问题,我相信正在发生的事情是我正在接收使用一些unicode空间和一些ascii空间的数据,这样看起来相同的某些字符串并不等同,例如,“waterresistant”!=“防水”。然而,这些字符串在我的数据库中的显示方式有所不同,它们带有多字节字符时通常会看到的奇怪字符:“waterÂresistant”和“waterresistant”。我想要一种使所有空格都成为ascii空格的方法,或者如果更简单的话,所有空格都是多字节空格。我尝试过使用preg_replace,但随后字符串不再像有效的多字节字符串一样读取。(字符串中的多字节字符将显示为垃圾)。preg_repl

php - mb_detect_encoding 将 ASCII 检测为 UTF-8?

我正在尝试自动将导入的IPTC元数据从图像转换为UTF-8,以便基于PHPmb_函数存储在数据库中。目前看起来是这样的:$val=mb_convert_encoding($val,'UTF-8',mb_detect_encoding($val));但是,当mb_detect_encoding()被提供一个ASCII字符串(Latin1字段中192-255的特殊字符)时,它会将其检测为UTF-8,因此在下面的尝试中将所有内容都转换为为了正确使用UTF-8,所有特殊字符都被删除。我尝试通过查找Latin1值来编写自己的方法,如果没有出现,我将继续让mb_detect_encoding决定它

php - 我如何告诉 poedit 忽略非 ASCII 文本错误?

我正在尝试让poedit在我的PHP项目上创建一个目录。它在我的一些文件中遇到非ASCII字符时崩溃。由于项目很大,我想知道是否可以运行poedit并忽略这些错误,而不是忽略它们出现的每个文件。我在Windows上使用poeditGUI。我正在尝试将法语内容本地化为英语,反之亦然。 最佳答案 在poEdit中,转到目录和设置并检查源代码字符集中的属性。尝试使用UTF-8。(提示对我有用,来自http://www.netvivs.com/error-xgettext-non-ascii-string-in-poedit/)

php - 我可以使用 iconv 将多字节智能引号转换为扩展的 ASCII 智能引号吗?

我有一些包含多字节智能引号字符的UTF-8内容。我发现这段代码可以轻松地将这些字符转换为ASCII直引号(ASCII代码34):$content=iconv("UTF-8","ASCII//TRANSLIT",$content);或$content=iconv("UTF-8","ISO-8859-1//TRANSLIT",$content);但是,我宁愿将它们转换为扩展的ASCII智能引号(Latin1编码中的ASCII代码147和148)。有谁知道如何做到这一点? 最佳答案 您正在寻找CP-1252其中包含0x91-0x94(14

php - 字符串函数在 PHP 中是 ASCII 安全的吗?

一些PHPstringfunctions(如strtoupper等)依赖于语言环境。但是当我确实知道特定字符串仅由ASCII(0-127)字符组成时,仍然不清楚语言环境是否重要。我可以保证strtoupper('abc..xyz')将始终独立于区域设置返回ABC..XYZ吗?做PHPstringfunctions在独立于区域设置的ASCII范围内工作相同?虽然关于strtoupper的答案对我来说很重要,但这个问题对于所有字符串函数库来说更为笼统。我想确保用户选择的语言环境(在多语言网站上)不会破坏我的与国际化无关的核心功能。 最佳答案

php - PHP 中的字符串文字是否只能以 ASCII 的兼容超集(例如 UTF-8 或 ISO-8859-1)的编码进行编码?

我从DetailsoftheStringType中看到以下文字PHP手册中的页面:GiventhatPHPdoesnotdictateaspecificencodingforstrings,onemightwonderhowstringliteralsareencoded.Stringwillbeencodedinwhateverfashionitisencodedinthescriptfile.Thus,ifthescriptiswritteninISO-8859-1,thestringwillbeencodedinISO-8859-1andsoon.However,thisdoes