diff --git a/modules/backend/models/ExportModel.php b/modules/backend/models/ExportModel.php index cd496dfaa..84b0d43d8 100644 --- a/modules/backend/models/ExportModel.php +++ b/modules/backend/models/ExportModel.php @@ -183,4 +183,24 @@ abstract class ExportModel extends Model return $results; } + /** + * Implodes a single dimension array using pipes (|) + * Multi dimensional arrays are not allowed. + * @return string + */ + protected function encodeArrayValue($data, $delimeter = '|') + { + $newData = []; + foreach ($data as $value) { + if (is_array($value)) { + $newData[] = 'Array'; + } + else { + $newData[] = str_replace($delimeter, '\\'.$delimeter, $value); + } + } + + return implode($delimeter, $newData); + } + } \ No newline at end of file diff --git a/modules/backend/models/ImportModel.php b/modules/backend/models/ImportModel.php index f3659a7a4..253e5485d 100644 --- a/modules/backend/models/ImportModel.php +++ b/modules/backend/models/ImportModel.php @@ -129,6 +129,24 @@ abstract class ImportModel extends Model return $newRow; } + /** + * Explodes a string using pipes (|) to a single dimension array + * @return array + */ + protected function decodeArrayValue($value, $delimeter = '|') + { + if (strpos($value, $delimeter) === false) return $value; + + $data = preg_split('~(?