From: Florent Bruneau Date: Tue, 27 Jan 2009 21:36:49 +0000 (+0100) Subject: Add PlDict that wraps an array and exposes the same API than Get:: Post::, X-Git-Tag: core/1.0.1~24 X-Git-Url: http://git.polytechnique.org/?a=commitdiff_plain;h=f4e68a785c9cd69abf70db02944eb9422fef6414;p=platal.git Add PlDict that wraps an array and exposes the same API than Get:: Post::, Env::, Session::. Signed-off-by: Florent Bruneau --- diff --git a/classes/pldict.php b/classes/pldict.php new file mode 100644 index 0000000..6000ab3 --- /dev/null +++ b/classes/pldict.php @@ -0,0 +1,98 @@ +array = $array; + } + + private function _get($key, $default) + { + return isset($this->array[$key]) ? $this->array[$key] : $default; + } + + public function has($key) + { + return isset($this->array[$key]); + } + + public function kill($key) + { + unset($this->array[$key]); + } + + public function set($key, $value) + { + $this->array[$key] = $value; + } + + public function v($key, $default = null) + { + return $this->_get($key, $default); + } + + public function b($key, $default = false) + { + return (bool)$this->_get($key, $default); + } + + public function s($key, $default = '') + { + return (string)$this->_get($key, $default); + } + + public function t($key, $default = '') + { + return trim($this->s($key, $default)); + } + + public function blank($key, $strict = false) + { + if (!$this->has($key)) { + return true; + } + $var = $strict ? $this->s($key) : $this->t($key); + return empty($var); + } + + public function i($key, $default = 0) + { + $i = $this->_get($key, $default); + return ctype_digit($i) ? intval($i) : $default; + } + + public function l(array $keys) + { + return array_map(array($this, 'v'), $keys); + } + + public function dict() + { + return $this->array; + } +} + +// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: +?>