WP_Customize_Setting::multidimensional( array $root, array $keys, bool $create = false ): array|void

In this article

Multidimensional helper function.

Parameters

$rootarrayrequired
$keysarrayrequired
$createbooloptional

Default:false

Return

array|void Keys are 'root', 'node', and 'key'.

Source

final protected function multidimensional( &$root, $keys, $create = false ) {	if ( $create && empty( $root ) ) {	$root = array();	}	if ( ! isset( $root ) || empty( $keys ) ) {	return;	}	$last = array_pop( $keys );	$node = &$root;	foreach ( $keys as $key ) {	if ( $create && ! isset( $node[ $key ] ) ) {	$node[ $key ] = array();	}	if ( ! is_array( $node ) || ! isset( $node[ $key ] ) ) {	return;	}	$node = &$node[ $key ];	}	if ( $create ) {	if ( ! is_array( $node ) ) {	// Account for an array overriding a string or object value.	$node = array();	}	if ( ! isset( $node[ $last ] ) ) {	$node[ $last ] = array();	}	}	if ( ! isset( $node[ $last ] ) ) {	return;	}	return array(	'root' => &$root,	'node' => &$node,	'key' => $last,	); } 

Changelog

VersionDescription
3.4.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.