首页 > 解决方案 > 展平这个数组堆栈 PHP

问题描述

我正在尝试找到一种方法来展平这个数组

我正在输出 sha1 转换,但我希望将其分成 10 的 4 部分

然后在保存之前更改其顺序。

到目前为止,这是我的代码。

<?php

$hash = bin2hex(random_bytes(5));
$randomhash = sha1($hash);
$parts = str_split($randomhash, 10);
$newar = $parts[3].$parts.[1].$parts.[2].$parts[0];
$hashflat = implode(" ",$newar);

echo $hashflat;

但是,这不能按预期工作。有没有简单的爆破方法

$parts[3] $parts [1] $parts [2] $parts[0]

以这个顺序来平输出?

标签: phparrayssha1

解决方案


$newar假设你想要它作为一个字符串,它已经是你想要的了。

但是,您需要空格,因此它将是:

$hash = bin2hex(random_bytes(5));
$randomhash = sha1($hash);
$parts = str_split($randomhash, 10);
$newar = $parts[3]." ".$parts[1]." ".$parts[2]." ".$parts[0];

这会将其作为带有空格的字符串而不是数组返回。如果你想要它作为一个重新排序的数组,它是

$hash = bin2hex(random_bytes(5));
$randomhash = sha1($hash);
$parts = str_split($randomhash, 10);
$newar = array($parts[3],$parts[1],$parts[2],$parts[0]);

推荐阅读