protected function _element($data, $tab, $start) { static $start; $eof = EOL; $output = ''; $attrs = ''; $tab = str_repeat("\t", $start); if (!is_array($data)) { return $data . $eof; } else { foreach ($data as $k => $v) { if (isRealNumeric($k)) { $value = $k; $k = 'li'; } else { $value = NULL; } $end = prefix(Arrays::getFirst(explode(' ', $k))); if (!is_array($v)) { $output .= "{$tab}<{$k}>{$v}<{$end}>{$eof}"; } else { if (stripos($k, 'ul') !== 0 && stripos($k, 'ol') !== 0 && $k !== 'li') { $value = $k; $k = 'li'; $end = prefix($k); } else { $value = NULL; } $output .= $tab . "<{$k}>{$value}{$eof}" . $this->_element($v, $tab, $start++) . $tab . "<{$end}>" . $tab . $eof; $start--; } } } return $output; }
public function posReverse($array = '', $poss = '', $changePos = '') { if (!is_array($array)) { return Error::set('Error', 'arrayParameter', 'array'); } if (!isRealNumeric($poss)) { $poss = array_search($poss, $array); } if (!isRealNumeric($changePos)) { $changePos = array_search($changePos, $array); } $pos = $poss; $lastArray = array(); if ($pos > $changePos) { $pos = $changePos; $changePos = $poss; } for ($i = 0; $i < count($array); $i++) { if ($i == $pos) { $element = $array[$i]; $lastArray[$i] = ""; } elseif ($i == $changePos) { $changeElement = $array[$i]; $lastArray[$i] = ""; } else { $lastArray[$i] = $array[$i]; } } if (isset($changeElement)) { $lastArray[$pos] = $changeElement; } if (isset($element)) { $lastArray[$changePos] = $element; } return $lastArray; }