primo commit
This commit is contained in:
61
libraries/fof30/Model/Mixin/ImplodedArrays.php
Normal file
61
libraries/fof30/Model/Mixin/ImplodedArrays.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
/**
|
||||
* @package FOF
|
||||
* @copyright Copyright (c)2010-2021 Nicholas K. Dionysopoulos / Akeeba Ltd
|
||||
* @license GNU General Public License version 2, or later
|
||||
*/
|
||||
|
||||
namespace FOF30\Model\Mixin;
|
||||
|
||||
defined('_JEXEC') || die;
|
||||
|
||||
/**
|
||||
* Trait for dealing with imploded arrays, stored as comma-separated values
|
||||
*/
|
||||
trait ImplodedArrays
|
||||
{
|
||||
/**
|
||||
* Converts the loaded comma-separated list into an array
|
||||
*
|
||||
* @param string $value The comma-separated list
|
||||
*
|
||||
* @return array The exploded array
|
||||
*/
|
||||
protected function getAttributeForImplodedArray($value)
|
||||
{
|
||||
if (is_array($value))
|
||||
{
|
||||
return $value;
|
||||
}
|
||||
|
||||
if (empty($value))
|
||||
{
|
||||
return [];
|
||||
}
|
||||
|
||||
$value = explode(',', $value);
|
||||
$value = array_map('trim', $value);
|
||||
|
||||
return $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts an array of values into a comma separated list
|
||||
*
|
||||
* @param array $value The array of values
|
||||
*
|
||||
* @return string The imploded comma-separated list
|
||||
*/
|
||||
protected function setAttributeForImplodedArray($value)
|
||||
{
|
||||
if (!is_array($value))
|
||||
{
|
||||
return $value;
|
||||
}
|
||||
|
||||
$value = array_map('trim', $value);
|
||||
$value = implode(',', $value);
|
||||
|
||||
return $value;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user