_wp_array_get

函数


_wp_array_get ( $array, $path, $default = null )
Access
Private
参数
  • (array)
    $array
    An array from which we want to retrieve some information.
    Required:
  • (array)
    $path
    An array of keys describing the path with which to retrieve information.
    Required:
  • (mixed)
    $default
    Optional. The return value if the path does not exist within the array, or if `$array` or `$path` are not arrays. Default null.
    Required:
    Default: null
返回值
  • (mixed) The value from the path specified.
定义位置
  • wp-includes/functions.php
    , line 4911
引入
5.6.0
弃用

Accesses an array in depth based on a path of keys.

It is the PHP equivalent of JavaScript’s `lodash.get()` and mirroring it may help other components
retain some symmetry between client and server implementations.

Example usage:

$array = array(
‘a’ => array(
‘b’ => array(
‘c’ => 1,
),
),
);
_wp_array_get( $array, array( ‘a’, ‘b’, ‘c’ ) );

function _wp_array_get( $array, $path, $default = null ) {
	// Confirm $path is valid.
	if ( ! is_array( $path ) || 0 === count( $path ) ) {
		return $default;
	}

	foreach ( $path as $path_element ) {
		if (
			! is_array( $array ) ||
			( ! is_string( $path_element ) && ! is_integer( $path_element ) && ! is_null( $path_element ) ) ||
			! array_key_exists( $path_element, $array )
		) {
			return $default;
		}
		$array = $array[ $path_element ];
	}

	return $array;
}