不同的浏览器处理各种PHP函数的方式不同吗



上下文:我目前正在开发一个MATLAB脚本,该脚本可以解码使用1:1字母替换方案加密的消息。它的工作原理是找到消息中最常见的字符,并根据在线统计数据将其重新映射为相应的常见字母。为了帮助演示,我正在编写一条消息,其字母频率与脚本中的字母频率完全一致。为了帮助写这封信,我开发了一个基本的HTML表单和附带的PHP脚本(位于http://nd.edu/~wbadart/aletter),它对输入中的字母进行计数,对它们进行排序,并将排序与所需的排序一起显示。

问题:我使用的是Firefox,该工具运行良好,但它在Chrome和Safari中为我的队友显示了不正确的值。最明显的错误之一是Chrome和Safari都错误地显示了一个变量$mssgLen,它只不过是输入的strlen()。有人知道这些差异的原因吗?

谢谢!

尝试将编码添加到html的头部分,并尝试使用mb_strlen而不是strlen。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">

PHP是服务器端语言,所以浏览器之间没有区别。

不同之处可能是对请求进行编码的默认值以及处理方式。这就是strlen差异可能发生的地方。

也许浏览器终止行的方式不同。例如,"\n\r"而不仅仅是"\n",反之亦然。var_dump或调试您的输入,以便您可以看到这些细微的差异。

相关内容

最新更新