Как сравнить массив в PHP с неточными значениями и вытянуть похожие?

Подскажите, как сравнить неточное значение в одном массиве ... если быть точнее - У меня есть старый массив со значениями - который пришёл в "old_files", это названия картинок, которые я вывел с помощью Чекбокса на экран и соответственно передал их значения в checkbox - которые потом в массив попадают с помощью ключей - "XID8QprD_jpg" => "on" "jLBF9usM_jpg" => "on" "d9ss85Hh_jpg" => "on"

Только я не могу их сравнить функцией - array_key_exists, т.к. ключи поменяли своё название XID8QprD.jpg <-> XID8QprD_jpg , то есть это нижнее подчеркивание не дает мне их сравнить. Подскажите, есть ли какое-то решение данной проблемы?

array:12 [▼ 
  "title" => "Девять пяттдесят семь"
  "alias" => "devyat-pyattdesyat-sem"
  "text" => "<p>Девять пяттдесят пятьДевять пяттдесят пятьДевять пяттдесят пятьДевять пяттдесят пятьДевять пяттдесят семьДевять пяттдесят семь</p>"
  "tags_title" => "Вася,петя"
  "addition_products" => "Автобусные туры с ночными переездами - это бич нашего общества!dsadasas,Новый товар 21-02-2020,Новый проверочный товар без ничего"
  "old_image" => "K9eXEi6U.jpg"
  "category_id" => "4"
  "XID8QprD_jpg" => "on"
  "jLBF9usM_jpg" => "on"
  "d9ss85Hh_jpg" => "on"
  "tags_alias" => "vasya-petya"
  "old_files" => array:3 [▼
    0 => "XID8QprD.jpg"
    1 => "jLBF9usM.jpg"
    2 => "d9ss85Hh.jpg"
  ]
]

Вот такой код у меня

if ($article->file){ 
    $data['old_files'] = explode(',', $article->file); 
    $new_array = []; 
    foreach ($data['old_files'] as $oneFile){ 
        $oneFile = str_replace(".","_",$oneFile);
        if (array_key_exists($oneFile, $data)) { 
            $new_array[] .= $oneFile; 
        } 
    } 

Ответы (0 шт):