Yani, bunun gibi üç diziler var:
[items] => Array
( [0] => Array
(
[id] => someid
[title] => sometitle
[author] => someauthor
...
)
...
)
ve ayrıca kara virgülle ayrılmış kelime ile bir dize:
$blacklist = "some,words,to,blacklist";
Şimdi ben (onlar biri olabilir gibi) ile bu kelimeleri maç gerekir id, title, author ve buna göre sonuçları göster.
Böyle bir fonksiyonun düşünüyordum:
$pattern = '('.strtr($blacklist, ",", "|").')'; // should return (some|words|etc)
foreach ($items as $item) {
if ( !preg_match($pattern,$item['id']) || !preg_match($pattern,$item['title']) || !preg_match($pattern,$item['author']) )
{
// show item
}
}
Bu diziler filtrelemek için ya da ben FILTER_VALIDATE_REGEXP ile strpos() veya filter_var ile bir şey kullanmak gerekir en etkili yoludur ve eğer ben merak ediyorum ...
Bu fonksiyon 3 diziler başına yinelenen unutmayın. Bununla birlikte, her bir dizi 50'den fazla ürün içermez.