Поиск значений массива внутри других ключей массива - PullRequest
0 голосов
/ 23 февраля 2020

Я ищу вашу помощь по этому вопросу: Как я могу проверить, существуют ли значения $expInterior внутри $suppEstateInterior ключей, если значение равно ключу, мне нужно показать поле ввода с атрибутом проверено , если нет, оставьте без атрибута проверено .

У меня дублируются результаты 5 раз.

<?php

    $suppEstateInterior = [
    'fr' => ['Suite parentale', 'Interphone', 'Visiophone', 'Internet', 'Cheminée', 'Cuisine équipé', 'Cuisine américaine', 'Salon marocain', 'Salon européen']
    ];

    $expInterior = [1, 3, 5, 13, 18];

    $loadData = '';

    $setEstateInterior   = $suppEstateInterior['fr'];


    foreach($setEstateInterior as $ki => $interior):


        foreach($expInterior as $vk):
            if($vk == $ki):
            $loadData       .= $vk.'--'.$ki.' <input caption="yes" type="checkbox" checked name="suppInterior[]" value="'.$ki.'">';
    else:
        $loadData       .= '<input caption="no" type="checkbox" name="suppInterior[]" value="'.$ki.'">';

    endif;
    $loadData       .= $interior.'<br>';


    endforeach;

    endforeach;


    echo $loadData;
    ?>

Спасибо заранее

1 Ответ

0 голосов
/ 24 февраля 2020

Вы можете использовать in_array в качестве проверки, вытаскивая внутренний l oop и если / иначе:

<?php
$suppEstateInterior = [
'fr' => ['Suite parentale', 'Interphone', 'Visiophone', 'Internet', 'Cheminée', 'Cuisine équipé', 'Cuisine américaine', 'Salon marocain', 'Salon européen']
];

$expInterior = [1, 3, 5, 13, 18];
$loadData = '';
foreach($suppEstateInterior['fr'] as $ki => $interior):
    $in_exptInterior = in_array($ki, $expInterior);
    $caption = $in_exptInterior ? 'yes' : 'no';
    $checked = $in_exptInterior ? 'checked' : '';
    $loadData .= '<input caption="'.$caption.'" type="checkbox" '. $checked .' name="suppInterior[]" value="'.$ki.'">';
    $loadData .= $interior.'<br>';
endforeach;

echo $loadData;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...