Как видно из in this other answer, существует несколько способов одновременного повторения двух одинаковых массивов; однако все методы имеют довольно значительную ошибку. Вот некоторые из предостережений с методами предложил:PHP: лучший способ повторить два параллельных массива?
- Вы не можете использовать
FALSE
значения в одном из массивов. - Вы можете использовать только скалярные значения в одном из массивов.
- Вы должны использовать числовые индексированные массивы.
- Оба массива должны использовать одни и те же ключи.
- Etc.
Мой вопрос - есть способ сделать это, который не страдает от какой-либо из этих (или других) существенных предостережений?
Имейте в виду, что я просто прошу об этом из любопытства; Я не имею в виду, и даже не знаю, действительно ли такой случай существует или будет полезен/практичен в реальном сценарии. Однако, вот несколько примеров данных:
$arr1 = [ 'a' => 1, 'b' => FALSE, 'c' => new DateTime() ];
$arr2 = [ 'foo', TRUE, 7 ];
Что случилось с ответом beefsack к этому вопросу? Похоже, что он будет работать независимо от содержимого или структуры массивов. – nickb
это не сработает, потому что '' b '=> FALSE' @nickb – Baba
@Baba - Нет, [работает с '' b' => false'] (http://codepad.viper-7.com/nNZuNj). – nickb