Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP和Javascript:欧元符号在PHP中比Javascript占用更多字符长度_Php_Javascript - Fatal编程技术网

PHP和Javascript:欧元符号在PHP中比Javascript占用更多字符长度

PHP和Javascript:欧元符号在PHP中比Javascript占用更多字符长度,php,javascript,Php,Javascript,我收到的短信是 可于2012年5月16日6:45至2012年5月26日在科隆订购? 每天支付10欧元 我认为欧元的象征是恶棍 使用欧元符号检查时: JavaScript字符数=86 PHP字符数=88 没有欧元标志的支票 JavaScript字符数=84 PHP字符数=84 任何人都可以解释为什么会发生这种情况?尝试使用&euro 另外,在通过转义函数运行字符串后,尝试输出该字符串。可在科隆2012年5月16日6:45至2012年5月26日订购?每天支付10欧元 将欧元替换为&欧元;您将在php

我收到的短信是


可于2012年5月16日6:45至2012年5月26日在科隆订购? 每天支付10欧元

我认为欧元的象征是恶棍

使用欧元符号检查时:

JavaScript字符数=86 PHP字符数=88

没有欧元标志的支票

JavaScript字符数=84 PHP字符数=84

任何人都可以解释为什么会发生这种情况?

尝试使用&euro


另外,在通过转义函数运行字符串后,尝试输出该字符串。

可在科隆2012年5月16日6:45至2012年5月26日订购?每天支付10欧元


将欧元替换为&欧元;您将在php和js中得到相同的结果,这很可能与您的内部编码有关,请参阅它在哪里正确地警告字符串长度,如字符串“10欧元”的长度为3。

您能显示准确的代码吗?你用双引号吗?如果是这样,请尝试单引号。注意utf8编码:我认为js中没有问题。php中存在计数问题。如果在JS中欧元符号将长度增加2,则仍然存在一些错误。这只是一个单一的角色。但由于它在UTF-8中是一个多字节符号,它似乎被转换为ASCII或其他用于确定长度的东西。我在控制台中尝试过,长度为1:`var s=€;console.log.length;