WP_CLI
Formatter::show_multiple_fields()
Show multiple fields of an object.
Метод класса: Formatter{}
Хуков нет.
Возвращает
null
. Ничего (null).
Использование
// private - только в коде основоного (родительского) класса $result = $this->show_multiple_fields( $data, $format, $ascii_pre_colorized );
- $data(объект|массив) (обязательный)
- Data to display
- $format(строка) (обязательный)
- Format to display the data in
- $ascii_pre_colorized(true|false|массив)
- A boolean or an array of booleans to pass to show_table() if the item in the table is pre-colorized.
По умолчанию: false
Код Formatter::show_multiple_fields() Formatter::show multiple fields WP-CLI 2.8.0-alpha
private function show_multiple_fields( $data, $format, $ascii_pre_colorized = false ) { $true_fields = []; foreach ( $this->args['fields'] as $field ) { $true_fields[] = $this->find_item_key( $data, $field ); } foreach ( $data as $key => $value ) { if ( ! in_array( $key, $true_fields, true ) ) { if ( is_array( $data ) ) { unset( $data[ $key ] ); } elseif ( is_object( $data ) ) { unset( $data->$key ); } } } switch ( $format ) { case 'table': case 'csv': $rows = $this->assoc_array_to_rows( $data ); $fields = [ 'Field', 'Value' ]; if ( 'table' === $format ) { self::show_table( $rows, $fields, $ascii_pre_colorized ); } elseif ( 'csv' === $format ) { Utils\write_csv( STDOUT, $rows, $fields ); } break; case 'yaml': case 'json': WP_CLI::print_value( $data, [ 'format' => $format, ] ); break; default: WP_CLI::error( 'Invalid format: ' . $format ); break; } }