【发布时间】:2019-06-28 22:08:47
【问题描述】:
我正在尝试创建一个可以 MD5 快速散列多行 (50,000+) 的脚本。我有一个我一直在尝试制作的脚本,但它有时会给我不同的输出,我不知道为什么。有什么想法吗?
<?php
if(isset($_POST['btn'])){
$value=$_POST['text'];
$ids = explode(PHP_EOL, $value);
$content = '';
for ($i=0;$i<count($ids);$i++){
$content .= md5($ids[$i]).'<br>';
}
echo nl2br($content);
}
?>
当我尝试散列时:
apples
bananas
oranges
pineapples
结果:
265f78fc274d8428fd63dabc24400cb4
63a63ddf49984e0f1cef336aeb6ca39c
229b1cc78a248c6cea47fa95565dc9ca
019b111ec0c13ed923922715bfb1670a
但我应该得到:
daeccf0ad3c1fc8c8015205c332f5b42
ec121ff80513ae58ed478d5c5787075b
91b07b3169d8a7cb6de940142187c8df
019b111ec0c13ed923922715bfb1670a
【问题讨论】:
-
当你把明确的
<br>放在$content中时,为什么还要使用nl2br()? -
你的话后面有一些空格。删除此处的空格后,我得到了正确的结果:3v4l.org/njDvi
-
@Jeff CR,不是空格
-
@Barmar 我在复制和粘贴 OP 的代码时有空格。没有看到 CR...也许 3v4l.org 自动从 CR 中制作了 \n 和/或他们的服务器配置不同。无论如何,你的修剪似乎是最好的答案(一如既往)
-
SO问题中没有CR,CR->空格翻译可能是他这里粘贴的时候发生的。