Проверьте, выходит ли значение в массиве (Laravel или Php)

У меня есть этот массив:

$list_desings_ids = array('hc1wXBL7zCsdfMu','dhdsfHddfD','otheridshere'); 

С die () + var_dumo () этот массив возвращает меня:

 array:2 [▼ 0 => "hc1wXBL7zCsdfMu" 1 => "dhdsfHddfD" 2 => "otheridshere" ] 

Я хочу проверить, выходит ли design_id в массив $ list_desings_ids.

Например:

 foreach($general_list_designs as $key_design=>$design) { #$desing->desing_id return me for example: hc1wXBL7zCsdfMu if(array_key_exists($design->design_id, $list_desings_ids)) $final_designs[] = $design; } 

Но это не работает для меня, каков правильный путь?

Related of "Проверьте, выходит ли значение в массиве (Laravel или Php)"

вместо array_key_exists вы просто array_key_exists , это решит вашу проблему, потому что если вы сбросите этот массив

 $list_desings_ids = array('hc1wXBL7zCsdfMu','dhdsfHddfD','otheridshere'); 

выход будет,

 array( 0 => hc1wXBL7zCsdfMu, 1 => dhdsfHddfD, 2 => otheridshere ) 

поэтому ваш код array_key_exists не будет работать, потому что здесь в ключах 0,1,2 существует. Итак, вы хотите проверить значения, поэтому для значений просто сделайте это in_array он будет искать ваше значение желания в указанном / созданном массиве

Вы можете использовать in_array для этого.

Пытаться

 $design_id = 'hc1wXBL7zCsdfMu'; $list_desings_ids = array('hc1wXBL7zCsdfMu','dhdsfHddfD','otheridshere'); if(in_array($design_id, $list_desings_ids)) { echo "Yes, design_id: $design_id exits in array"; } 

У вашего массива нет ключа.
попробуй это

 foreach($general_list_designs as $key_design=>$design) { #$desing->desing_id return me for example: hc1wXBL7zCsdfMu if(in_array($design->design_id, $list_desings_ids)) $final_designs[] = $design; } 

вам нужно изменить только свое условие, заменив этот код

 if(in_array($design->design_id, $list_desings_ids))