3 /***************************************************************************
5 * Functions for parsing URL parameters
9 function getParamBool($sName, $bDefault=false)
11 if (!isset($_GET[$sName])) return $bDefault;
13 return (bool) $_GET[$sName];
16 function getParamInt($sName, $bDefault=false)
18 if (!isset($_GET[$sName])) return $bDefault;
20 if (!preg_match('/^[+-][0-9]+$/', $_GET[$sName]))
22 userError("Integer number expected for parameter '$sName'");
25 return (int) $_GET[$sName];
28 function getParamFloat($sName, $bDefault=false)
30 if (!isset($_GET[$sName])) return $bDefault;
32 if (!preg_match('/^[+-]?[0-9]*\.?[0-9]+$/', $_GET[$sName]))
34 userError("Floating-point number expected for parameter '$sName'");
37 return (float) $_GET[$sName];
40 function getParamString($sName, $bDefault=false)
42 if (!isset($_GET[$sName])) return $bDefault;
47 function getParamSet($sName, $aValues, $sDefault=false)
49 if (!isset($_GET[$sName])) return $sDefault;
51 if (!in_array($_GET[$sName], $aValues))
53 userError("Parameter '$sName' must be one of: ".join(', ', $aValues));