Corrigindo um pequeno erro do @YurkaTim , sua solução funciona para mim, mas adicionando use:
Para usar $searchedValue, dentro da função, uma solução pode estar use ($searchedValue)após os parâmetros da função function ($e) HERE.
a array_filterfunção retornará apenas $neededObjectse a condição de retorno fortrue
Se $searchedValueé uma sequência ou número inteiro:
$searchedValue = 123456; // Value to search.
$neededObject = array_filter(
$arrayOfObjects,
function ($e) use ($searchedValue) {
return $e->id == $searchedValue;
}
);
var_dump($neededObject); // To see the output
Se $searchedValuefor o array onde precisamos verificar com uma lista:
$searchedValue = array( 1, 5 ); // Value to search.
$neededObject = array_filter(
$arrayOfObjects,
function ( $e ) use ( $searchedValue ) {
return in_array( $e->term_id, $searchedValue );
}
);
var_dump($neededObject); // To see the output