function makeFriendlyURL($page = "/", $urlargs = NULL, $queryargs = NULL) { $url = $page; if (!empty($urlargs) && is_array($urlargs)) { $urlargs = array_flatten($urlargs); foreach ($urlargs as $k => $v) { $url .= ($url[strlen($url) - 1] != "/" ? "/" : "") . "{$k}-" . encode_friendly($v); } } if (!empty($queryargs) && is_array($queryargs)) { $urlseperator .= "?"; foreach ($queryargs as $k => $v) { if (is_array($v)) { foreach ($v as $k2 => $v2) { $url .= $urlseperator . urlencode($k . "[" . $k2 . "]") . "=" . urlencode($v2); $urlseperator = "&"; } } else { $url .= $urlseperator . urlencode($k) . "=" . urlencode($v); } $urlseperator = "&"; } } return $url; }
/** * Smarty truncate modifier plugin * * Type: modifier<br> * Name: truncate<br> * Purpose: Truncate a string to a certain length if necessary, * optionally splitting in the middle of a word, and * appending the $etc string or inserting $etc into the middle. * @link http://smarty.php.net/manual/en/language.modifier.truncate.php * truncate (Smarty online manual) * @author Monte Ohrt <monte at ohrt dot com> * @param string * @param integer * @param string * @param boolean * @param boolean * @return string */ function smarty_modifier_encode_friendly($url) { return encode_friendly($url); }