/** * Same as ToIntArray but escapes all strings with mysql_real_escape_string * * @static */ public static function ToEscapedArray(&$a, $keepillegal = false) { Oops_Utils::ToArray($a); if (count($a)) { foreach ($a as $k => $v) { $v1 = Oops_Sql::Escape($v); if ($v != $v1) { if (!$keepillegal) { unset($a[$k]); } else { $a[$k] = $v1; } } } } }
public static function quoteValue($v) { if (is_null($v)) { return 'NULL'; } /** * Check if value is a MySQL user variable */ switch (gettype($v)) { case 'boolean': return $v ? 1 : 0; case 'integer': case 'double': return $v; case 'object': switch (get_class($v)) { case 'Oops_Sql_Variable': case 'Oops_Sql_Expression': return (string) $v; case 'Oops_Sql_Value_String': break; } // no break here // no break here default: return "'" . Oops_Sql::Escape((string) $v) . "'"; } }
/** * Get requested value, modified to the requested type * * @param string $key * request key * @param string $type * required value type * @param mixed $default * default value * @return mixed * @tutorial Oops/Oops/Controller.cls#handling_request */ function Request($key, $type = null, $default = null) { if (!strlen($key)) { return false; } if (is_null($value = $this->_request->get($key))) { return $default; } if (is_null($type)) { return $value; } switch (strtolower($type)) { case 'bool': case 'boolean': return (bool) $value; case 'int': case 'integer': return (int) $value; case 'float': case 'double': case 'numeric': case 'decimal': return (double) $value; case 'array': require_once 'Oops/Utils.php'; Oops_Utils::ToArray($value); return $value; case 'arrayint': require_once 'Oops/Utils.php'; Oops_Utils::ToIntArray($value); return $value; case 'arraysql': require_once 'Oops/Utils.php'; Oops_Utils::ToIntArray($value); return $value; case 'sql': require_once 'Oops/Sql.php'; return Oops_Sql::Escape($value); case 'words': return preg_replace('/[^\\s\\w]/', '', $value); case 'trimmedwords': return trim(preg_replace('/[^\\s\\w]/', '', $value)); default: return $value; } }