php - Javascript 字符串长度不同于 PHP mb_strlen(在 textarea 行,换行符)

标签 php javascript string-length

我正在使用 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/

相关文章:

php - 将输入文本值保留在表单中直到完成

javascript - Bootstrap 中的网格无法按预期工作

javascript - 使用 Google map 发出 AJAX 请求时,使 Highcharts 显示在 infowindow 窗口中

javascript - 改变 flex 列的宽度?

python重载运算符

php - 如何将循环中的这两个查询转换为单个 JOINed 查询?

PHP/MYSQL 搜索查询返回错误 : Subquery returns more than 1 row

php - 如何在 WooCommerce 的订单支付页面上检索订单 ID

string - 在 Golang 中按长度拆分字符串

arrays - VBScript 编码挑战 : Sort Array by String Length after Split Command