Моя цель - объединить 2 разных массива.PHP array_merge пустые значения всегда меньше prioritar
У меня есть таблица «a» & «b». Данные из таблицы «a» являются более достоверными.
ПРОБЛЕМА: если ключ из «a» содержит пустое значение, я хотел бы взять его из таблицы «b».
Вот мой код:
<?php
$a = array('key1'=> "key1 from prioritar", 'my_problem'=> "");
$b = array('key1'=> "key1 from LESS prioritar", 'key2'=>"key2 from LESS prioritar", 'my_problem'=> "I REACHED MY GOAL!");
$merge = array_merge($b, $a);
var_dump($merge);
Есть ли способ сделать это в одной функции, не делая что-то, как показано ниже?
foreach($b as $key => $value)
{
if(!array_key_exists($key, $a) || empty($a[$key])) {
$a[$key] = $value;
}
}
Ваш массив '$ b' имеет 2' key2'-индекса? – roullie
'! Array_key_exists || пустой' - это вздор. Использование одного из них будет очень хорошим, в зависимости от того, интересуетесь ли вы сравнением с 'false' или нет. Использование обоих вместе такое же, как использование 'empty'. – deceze
@roullie, спасибо, это была опечатка – Bast