別の配列に基づいて配列を除外するために使用するクラスに filterArray メソッドがあります。
function filterArray($needle, $heystack, $always = array())
{
foreach($heystack as $k => $v)
{
if( !in_array($v, $needle) && !in_array($v, $always) )
unset($heystack[$k]);
}
return $heystack;
}
使用法:
$chars = array('l', 'J', 'F');
$keys = array('d','D','j','l','N','S','w','z','W','F','m','M','n','t','L','o','Y','y','a','A','c','r','e','T');
$keys = filterArray($chars, $keys, array('z'));
$always
これは、常に存在する必要があり、除外されるべきではない項目の配列であることに注意してください。キーの結果は次のとおりです。
$keys = array('l', 'J', 'F', 'z');
これは、より多くの検証プロセスです。これを記述してパフォーマンスを最適化するより良い方法はありますか? パフォーマンスが重要なクラスで使用されるためです。
ありがとうございました。