Я пытаюсь сделать один массив установленным для итераций другого массива. Я работаю над алгоритмом хэширования, который принимает пользовательское значение порядка, который им нужен. Он берет их код и разбивает его на 40 блоков двоичного кода, которые должны быть преобразованы в шестнадцатеричные. Пока я могу изменить порядок итераций, но он принимает только последнее значение первого массива и устанавливает его как значение для каждой итерации второго массива.PHP - Установить значения первого массива для итераций второго массива
Первый массив выглядит следующим образом (показаны только 10 из 40 для экономии места):
Array
(
[0] => 0111
[1] => 1000
[2] => 0110
[3] => 0010
[4] => 0011
[5] => 0001
[6] => 0011
[7] => 0010
[8] => 0011
[9] => 0101
)
Второй, как это:
Array
(
[3] => 0101
[2] => 0101
[1] => 0101
[6] => 0101
[5] => 0101
[4] => 0101
[9] => 0101
[8] => 0101
[7] => 0101
[0] => 0101
)
А вот PHP код:
$arrayDump = $test->binarySplit($name);
$ordered = array();
$orderKey = array(3, 2, 1, 6, 5, 4, 9, 8, 7, 12, 11, 10, 15, 14, 13, 18, 17, 16, 21, 20, 19, 24, 23, 22, 27, 26, 25, 30, 29, 28, 33, 32, 31, 36, 35, 34, 39, 38, 37, 0);
foreach ($orderKey as $key) {
for ($i = $key; $i < count($arrayDump); $i++) {
$ordered[$key] = $arrayDump[$i];
}
}
Вызов класса не слишком важен для этой проблемы, что я могу сказать. $arrayDump
- это первый массив; $ordered
- второй. Как вы можете сказать, второй массив меняет итерацию на то, что я хочу, но она содержит только последнее значение из первого массива. Я бросил его через цикл, чтобы попытаться получить каждое значение, но я в недоумении. Любая помощь будет оценена по достоинству.
Спасибо. Я был одержим порядком итераций, я не думал о том, чтобы оставить порядок прежним и переупорядочить ценности. Я ценю вашу помощь в качестве второго ума, чтобы посмотреть на нее. – Mitch