#php #arrays
#php #массивы
Вопрос:
У меня есть два массива,
Массив один:
$amount = array(0 => 11, 1 => 22, 2 => 33);
Массив два:
$id = array(1 => 1);
Я хотел бы получить такой результат, сравнивая:
result = array(1 => 22);
Я пытался сделать это с помощью нескольких функций PHP, но мой мозг теперь растаял.
Надеюсь, что там есть какая-то помощь.
Ответ №1:
Хотя ваш вопрос немного расплывчатый, я думаю, вам нужен array_intersect_key,
$common = array_intersect_key($amount,$id);
Комментарии:
1. Спасибо. Я уже использовал array_intersect() раньше, но спасибо 🙂
Ответ №2:
Если я вас правильно понял, вы хотите перебрать ключи в $id
и получить соответствующие $amount
в массив?
$result = array();
foreach($id as $key => $value) {
if(isset($amount[$key])) {
$result[$key] = $amount[$key];
}
else {
// handle situation where
// $amount doesn't have that key
}
}
Ответ №3:
$array=array();
foreach($id as $key=>$val){
if(array_key_exists($key,$amount)){
$array[$key] = $amount[$key];
};
}
print_r($array);