我正在使用 JavaScript 和 PHP 来计算字符串长度。一切正常,除了当我计算来自 Chrome 或 Firefox 与 Internet Explorer 的文本区域字符串长度时。新的文本区域行/换行符在 Internet Explorer 和 PHP 中计算为 2 个字符。但是 Chrome 和 Firefox 计算 textarea 行/换行符只是 1 个字符(而 PHP 和 Internet Explorer 计算为 2 个字符)。这是我的问题。谁知道怎么解决?
所以在 IE 中的文本区域中的 JavaScript 字符计数 = 用 PHP 计算的字符串长度 ///Chrome/Firefox 文本区域中的 JavaScript 字符数不等于用 PHP 计算的字符串长度。
使用的代码:
Javascript : document.getElementById("text").value.length
PHP : mb_strlen($_POST['text'], 'UTF-8')
关于这个还有其他帖子,主要是下面这个:Javascript String Length Differs From PHP mb_strlen .但是我的问题的答案不存在,也无法在任何其他帖子中找到。
感谢您的帮助和建议。
最佳答案
Firefox 和 Chrome 仅使用 \n
作为换行符,而 IE(opera 也是)使用 \r\n
要获得唯一的结果,请在计算字符串长度之前将所有出现的 \r\n
替换为 \n
关于php - Javascript 字符串长度不同于 PHP mb_strlen(在 textarea 行,换行符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7642257/