WC_CSV_Exporter
in package
WC_CSV_Exporter Class.
Table of Contents
- $column_names : array<string|int, mixed>
- Columns ids and names.
- $columns_to_export : array<string|int, mixed>
- List of columns to export, or empty for all.
- $delimiter : string
- The delimiter parameter sets the field delimiter (one character only).
- $export_type : string
- Type of export used in filter names.
- $exported_row_count : int
- Number exported.
- $filename : string
- Filename to export to.
- $limit : int
- Batch limit.
- $row_data : array<string|int, mixed>
- Raw data to export.
- $total_rows : int
- Total rows to export.
- escape_data() : string
- Escape a string to be used in a CSV context
- export() : mixed
- Do the export.
- format_data() : string
- Format and escape data ready for the CSV file.
- format_term_ids() : string
- Format term ids to names.
- get_column_names() : array<string|int, mixed>
- Return an array of supported column names and ids.
- get_columns_to_export() : array<string|int, mixed>
- Return an array of columns to export.
- get_default_column_names() : array<string|int, mixed>
- Return default columns.
- get_delimiter() : string
- Return the delimiter to use in CSV file
- get_filename() : string
- Generate and return a filename.
- get_limit() : int
- Get batch limit.
- get_total_exported() : int
- Get count of records exported.
- is_column_exporting() : bool
- See if a column is to be exported or not.
- prepare_data_to_export() : mixed
- Prepare data that will be exported.
- send_content() : mixed
- Set the export content.
- send_headers() : mixed
- Set the export headers.
- set_column_names() : mixed
- Set column names.
- set_columns_to_export() : mixed
- Set columns to export.
- set_filename() : mixed
- Set filename to export to.
- set_limit() : mixed
- Set batch limit.
- export_column_headers() : string
- Export column headers in CSV format.
- export_row() : mixed
- Export rows to an array ready for the CSV.
- export_rows() : string
- Export rows in CSV format.
- fputcsv() : mixed
- Write to the CSV file.
- get_csv_data() : string
- Get CSV data for this export.
- get_data_to_export() : array<string|int, mixed>
- Get data that will be exported.
- implode_values() : string
- Implode CSV cell values using commas by default, and wrapping values which contain the separator.
Properties
$column_names
Columns ids and names.
protected
array<string|int, mixed>
$column_names
= array()
$columns_to_export
List of columns to export, or empty for all.
protected
array<string|int, mixed>
$columns_to_export
= array()
$delimiter
The delimiter parameter sets the field delimiter (one character only).
protected
string
$delimiter
= ','
$export_type
Type of export used in filter names.
protected
string
$export_type
= ''
$exported_row_count
Number exported.
protected
int
$exported_row_count
= 0
$filename
Filename to export to.
protected
string
$filename
= 'wc-export.csv'
$limit
Batch limit.
protected
int
$limit
= 50
$row_data
Raw data to export.
protected
array<string|int, mixed>
$row_data
= array()
$total_rows
Total rows to export.
protected
int
$total_rows
= 0
Methods
escape_data()
Escape a string to be used in a CSV context
public
escape_data(string $data) : string
Malicious input can inject formulas into CSV files, opening up the possibility for phishing attacks and disclosure of sensitive information.
Additionally, Excel exposes the ability to launch arbitrary commands through the DDE protocol.
Parameters
- $data : string
-
CSV field to escape.
Tags
Return values
string —export()
Do the export.
public
export() : mixed
Tags
Return values
mixed —format_data()
Format and escape data ready for the CSV file.
public
format_data(string $data) : string
Parameters
- $data : string
-
Data to format.
Tags
Return values
string —format_term_ids()
Format term ids to names.
public
format_term_ids(array<string|int, mixed> $term_ids, string $taxonomy) : string
Parameters
- $term_ids : array<string|int, mixed>
-
Term IDs to format.
- $taxonomy : string
-
Taxonomy name.
Tags
Return values
string —get_column_names()
Return an array of supported column names and ids.
public
get_column_names() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —get_columns_to_export()
Return an array of columns to export.
public
get_columns_to_export() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —get_default_column_names()
Return default columns.
public
get_default_column_names() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —get_delimiter()
Return the delimiter to use in CSV file
public
get_delimiter() : string
Tags
Return values
string —get_filename()
Generate and return a filename.
public
get_filename() : string
Return values
string —get_limit()
Get batch limit.
public
get_limit() : int
Tags
Return values
int —get_total_exported()
Get count of records exported.
public
get_total_exported() : int
Tags
Return values
int —is_column_exporting()
See if a column is to be exported or not.
public
is_column_exporting(string $column_id) : bool
Parameters
- $column_id : string
-
ID of the column being exported.
Tags
Return values
bool —prepare_data_to_export()
Prepare data that will be exported.
public
abstract prepare_data_to_export() : mixed
Return values
mixed —send_content()
Set the export content.
public
send_content(string $csv_data) : mixed
Parameters
- $csv_data : string
-
All CSV content.
Tags
Return values
mixed —send_headers()
Set the export headers.
public
send_headers() : mixed
Tags
Return values
mixed —set_column_names()
Set column names.
public
set_column_names(array<string|int, mixed> $column_names) : mixed
Parameters
- $column_names : array<string|int, mixed>
-
Column names array.
Tags
Return values
mixed —set_columns_to_export()
Set columns to export.
public
set_columns_to_export(array<string|int, mixed> $columns) : mixed
Parameters
- $columns : array<string|int, mixed>
-
Columns array.
Tags
Return values
mixed —set_filename()
Set filename to export to.
public
set_filename(string $filename) : mixed
Parameters
- $filename : string
-
Filename to export to.
Return values
mixed —set_limit()
Set batch limit.
public
set_limit(int $limit) : mixed
Parameters
- $limit : int
-
Limit to export.
Tags
Return values
mixed —export_column_headers()
Export column headers in CSV format.
protected
export_column_headers() : string
Tags
Return values
string —export_row()
Export rows to an array ready for the CSV.
protected
export_row(array<string|int, mixed> $row_data, string $key, resource $buffer) : mixed
Parameters
- $row_data : array<string|int, mixed>
-
Data to export.
- $key : string
-
Column being exported.
- $buffer : resource
-
Output buffer.
Tags
Return values
mixed —export_rows()
Export rows in CSV format.
protected
export_rows() : string
Tags
Return values
string —fputcsv()
Write to the CSV file.
protected
fputcsv(resource $buffer, array<string|int, mixed> $export_row) : mixed
Parameters
- $buffer : resource
-
Resource we are writing to.
- $export_row : array<string|int, mixed>
-
Row to export.
Tags
Return values
mixed —get_csv_data()
Get CSV data for this export.
protected
get_csv_data() : string
Tags
Return values
string —get_data_to_export()
Get data that will be exported.
protected
get_data_to_export() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —implode_values()
Implode CSV cell values using commas by default, and wrapping values which contain the separator.
protected
implode_values(array<string|int, mixed> $values) : string
Parameters
- $values : array<string|int, mixed>
-
Values to implode.