wpseek.com
A WordPress-centric search engine for devs and theme authors



wp_filter_object_list › WordPress Function

Since3.0.0
Deprecatedn/a
wp_filter_object_list ( $list, $args = array(), $operator = 'and', $field = false )
Parameters: (4)
  • (array) $list An array of objects to filter.
    Required: Yes
  • (array) $args Optional. An array of key => value arguments to match against each object. Default empty array.
    Required: No
    Default: array()
  • (string) $operator Optional. The logical operation to perform. 'AND' means all elements from the array must match. 'OR' means only one element needs to match. 'NOT' means no elements may match. Default 'AND'.
    Required: No
    Default: 'and'
  • (bool|string) $field Optional. A field from the object to place instead of the entire object. Default false.
    Required: No
    Default: false
Returns:
  • (array) A list of objects or object fields.
Defined at:
Codex:
Change Log:
  • 4.7.0

Filters a list of objects, based on a set of key => value arguments.

Retrieves the objects from the list that match the given arguments. Key represents property name, and value represents property value. If an object has more properties than those specified in arguments, that will not disqualify it. When using the 'AND' operator, any missing properties will disqualify it. When using the $field argument, this function can also retrieve a particular field from all matching objects, whereas wp_list_filter() only does the filtering.


Source

function wp_filter_object_list( $list, $args = array(), $operator = 'and', $field = false ) {
	if ( ! is_array( $list ) ) {
		return array();
	}

	$util = new WP_List_Util( $list );

	$util->filter( $args, $operator );

	if ( $field ) {
		$util->pluck( $field );
	}

	return $util->get_output();
}