WP_CLI
Configurator::extract_assoc()
Splits positional args from associative args.
Method of the class: Configurator{}
No Hooks.
Return
Array(Array)
.
Usage
$result = Configurator::extract_assoc( $arguments );
- $arguments(array) (required)
- -
Configurator::extract_assoc() Configurator::extract assoc code WP-CLI 2.8.0-alpha
public static function extract_assoc( $arguments ) { $positional_args = []; $assoc_args = []; $global_assoc = []; $local_assoc = []; foreach ( $arguments as $arg ) { $positional = null; $assoc_arg = null; if ( preg_match( '|^--no-([^=]+)$|', $arg, $matches ) ) { $assoc_arg = [ $matches[1], false ]; } elseif ( preg_match( '|^--([^=]+)$|', $arg, $matches ) ) { $assoc_arg = [ $matches[1], true ]; } elseif ( preg_match( '|^--([^=]+)=(.*)|s', $arg, $matches ) ) { $assoc_arg = [ $matches[1], $matches[2] ]; } else { $positional = $arg; } if ( ! is_null( $assoc_arg ) ) { $assoc_args[] = $assoc_arg; if ( count( $positional_args ) ) { $local_assoc[] = $assoc_arg; } else { $global_assoc[] = $assoc_arg; } } elseif ( ! is_null( $positional ) ) { $positional_args[] = $positional; } } return [ $positional_args, $assoc_args, $global_assoc, $local_assoc ]; }