formGet method enchanted !no!ticket!number!
git-svn-id: svn+ssh://code.netmonsters.ru/svn/majestic/trunk@99 4cb57b5f-5bbd-dd11-951b-001d605cbbc5
This commit is contained in:
@ -129,20 +129,45 @@ final class Sublimer
|
||||
return implode(' ', $words);
|
||||
}
|
||||
|
||||
function formGet(Array $replaces)
|
||||
/**
|
||||
* Формирует get-строку для запроса
|
||||
*
|
||||
* @param array/string $replace - Имя переменной для замены (либо массив ключ=значение) В случае false вернет весь get
|
||||
* @param mixed $value - значение переменной для замены, если $replace - массив, то не играет роли. В случае false переменная удаляется из get
|
||||
* @return string
|
||||
*/
|
||||
function formGet($replace = false, $value = false)
|
||||
{
|
||||
$chunk = true; //обрезать последний & (или ?)
|
||||
$get = $_GET; //дабы не менять дефолтный массив
|
||||
foreach($replaces as $key => $val) {
|
||||
$get[$key] = $val;
|
||||
if (is_array($replace)) {
|
||||
foreach($replace as $key => $val) {
|
||||
if($val === false) {
|
||||
unset($get[$key]);
|
||||
$chunk = false;
|
||||
} else {
|
||||
$get[$key] = $val;
|
||||
}
|
||||
}
|
||||
} else if ($replace !== false) {
|
||||
if ($value === false) { //для получения строки БЕЗ параметра с именем $replace
|
||||
unset($get[$replace]);
|
||||
$chunk = false;
|
||||
} else {
|
||||
$get[$replace] = $value;
|
||||
}
|
||||
}
|
||||
|
||||
$str = '?';
|
||||
foreach($get as $key => $val)
|
||||
{
|
||||
foreach($get as $key => $val) {
|
||||
$str .= $key.'='.$val.'&';
|
||||
}
|
||||
|
||||
return mb_substr($str, 0, -1);
|
||||
if ($chunk) {
|
||||
$str = mb_substr($str, 0, -1);
|
||||
}
|
||||
|
||||
return htmlspecialchars($str);
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user