кстати, на будущее
во-первых, никакая $j тут не нужна - достаточно самой $str_found
во-вторых, и вообще array_column()
ну и в третьих, если массив берется из БД, то все делается ОДНИМ запросом через джойн
Потому что во-первых, идиотский формат хранения "через запятую". В нормальной БД никакая регулярка не нужна и все прекрасно работает.
Во-вторых, непонятно, с какого перепугу вообще эта странная кривизна должна работать. Что должны означать все эти развесистые баяны?
FanatPHP потому что по-другому никак, тут подставляется список id категорий через запятую REGEXP '\[\[:<:\]\]$cat_list\[\[:>:\]\]' их может быть до 20, я же не буду перечислять каждую категорию через or, единственный выход искать совпадения регулярным выражением, и кстати говоря оно работало и достаточно быстро, но сейчас почему-то не работает, потому что тип поля в котором это работало был varchar, а тут int