Я пытаюсь добавить значение массива в новый массив следующим образом:
$clientname[] = $cname['name'];
Если я var_dump($cname['name']);
тогда все выглядит нормально, но если я var_dump($clientname);
Я ожидаю увидеть то же самое, но я не вижу, похоже, что я сделал var_dump($cname);
Полный код здесь:
foreach($clientname as $client) {
foreach($client as $cname) {
var_dump($cname['name']);
$clientname[] = $cname['name'];
var_dump($clientname);
}
}
Я должен был сделать foreaches из-за структуры массива, в которой он находится, очевидно, var_dump($cname['name']);
повторяется на сумму $ cnames там, как и ожидалось
Что может быть причиной моего $clientname
быть дубликатом $cname
Таким образом, в массиве, через который вы проходите цикл, вы добавляете значения к себе?
В PHP, внутри, он создает копию этого массива для цикла.
Так что, если вы сбросите массив после foreach’es, вы увидите новые значения в нем.
Почему вы добавляете эти значения в один и тот же массив? Может быть удобнее создать новый массив и добавить их к этому?
Вот как работает PHP в этом примере, но если вы можете прояснить проблему, которую вы пытаетесь решить, могут быть более эффективные способы ее решения.
Других решений пока нет …