Как получить элемент из массива php с тем же названием?
подскажите пожалуйста как сравнивать эти 2 массива. Дела в том что есть карточка ресторана. В ресторане можно проводить определенные мероприятия. В админ панели есть уже 9 вариантов мероприятий что можно произвести. Для конкретного ресторана выбирается чекбоксами определенное мероприятия. После того как редактор выбирает нужное мы получаем в массиве . Пример такой
array(3) { [0]=> string(18) "Вечеринка" [1]=> string(14) "Свадьба" [2]=> string(12) "Фуршет" }
Так же у нас уж есть готовый массив который повторяется на всех карточках, массив всех возможный варинатов
array(
0 => [
'img' => 'static/img/assets/club/a1.svg',
'name' => 'Фуршет'
],
1 => [
'img' => 'static/img/assets/club/a2.svg',
'name' => 'Вечеринка'
],
2 => [
'img' => 'static/img/assets/club/a3.svg',
'name' => 'Свадьба'
],
3 => [
'img' => 'static/img/assets/club/a4.svg',
'name' => 'Детский праздник'
],
4 => [
'img' => 'static/img/assets/club/a5.svg',
'name' => 'Банкет'
],
5 => [
'img' => 'static/img/assets/club/a6.svg',
'name' => 'День рождения и юбилей'
],
6 => [
'img' => 'static/img/assets/club/a7.svg',
'name' => 'Конференции'
],
7 => [
'img' => 'static/img/assets/club/a8.svg',
'name' => 'Тренинги'
],
8 => [
'img' => 'static/img/assets/club/a9.svg',
'name' => 'Съемки'
],
)
Вопрос, как можно сделать такое. Мы проходимся циклу по первому массиву из 3 элементов. Ищем данный элемент из 2 массива по значению name и получаем его ключ, дабы можно было получить еще и 'img' . Вопрос в реализации поиска по имени. Спасибо
Ответы (2 шт):
foreach ($array as $key => $value) {
if (in_array($value['name'], $form_array, true) {
echo $key;
}
}
<?php
$srch=array("0"=>"Вечеринка", "1"=>"Свадьба", "2"=>"Фуршет");
$arr=array("0" => [
'img' => 'static/img/assets/club/a1.svg',
'name' => 'Фуршет'
],
"1" => [
'img' => 'static/img/assets/club/a2.svg',
'name' => 'Вечеринка'
],
"2" => [
'img' => 'static/img/assets/club/a3.svg',
'name' => 'Свадьба'
],
"3" => [
'img' => 'static/img/assets/club/a4.svg',
'name' => 'Детский праздник'
],
"4" => [
'img' => 'static/img/assets/club/a5.svg',
'name' => 'Банкет'
],
"5" => [
'img' => 'static/img/assets/club/a6.svg',
'name' => 'День рождения и юбилей'
],
"6" => [
'img' => 'static/img/assets/club/a7.svg',
'name' => 'Конференции'
],
"7" => [
'img' => 'static/img/assets/club/a8.svg',
'name' => 'Тренинги'
],
"8" => [
'img' => 'static/img/assets/club/a9.svg',
'name' => 'Съемки'
],
);
foreach ($arr as $key => $value) {
foreach ($srch as $key2 => $value2) {
if($value['name']==$value2){
$res[$value['name']]=$value['img'];
}
}
}
print_r($res);
?>