presave_alter_values() protected method

Hook to alter or respond to all the values of a particular element
protected presave_alter_values ( array $values, $current_values = [] ) : array
$values array
return array
 /**
  * Alter values before they go through the sanitize & save routine.
  *
  * Here, we're enforcing $post_limit.
  *
  * @param  array $values Field values being saved. This will either be
  *                       an array of ints if this is a singular field,
  *                       or an array of array of ints if $limit != 1.
  * @param  array $current_values Field's previous values.
  * @return array Altered values.
  */
 public function presave_alter_values($values, $current_values = array())
 {
     if ($this->post_limit > 0) {
         if (!empty($values[0]) && is_array($values[0])) {
             // If this is an array of arrays, limit each individually
             $values = array_filter($values);
             foreach ($values as $i => $value) {
                 if (!is_array($value)) {
                     unset($values[$i]);
                 } else {
                     $values[$i] = array_slice($value, 0, $this->post_limit);
                 }
             }
         } elseif (is_array($values)) {
             // this is an array of ints, so we can enforce the limit on it
             $values = array_slice($values, 0, $this->post_limit);
         }
     }
     return parent::presave_alter_values($values, $current_values);
 }