Helix Installation   Getting Started   Reference Documentation   Global Functions   Quick Start
ModulesClassesFunctions
 

Class Reference

class validation extends obj

Hide Inherited MembersHelix Core
Description
No description.
 
Constants
constantEMAIL ["^[a-zA-Z0-9_\.]+@{1}[a-zA-Z0-9_\.-]+\.([a-zA-Z]{2,4})$"][ validation ]
constantALNUM ["^[a-zA-Z0-9_]+$"][ validation ]
constantPHONE ["^[a-zA-Z0-9 -\.\(\)+]+$"][ validation ]
constantNUMBER ["^[0-9\.,]+$"][ validation ]
constantINT ["^[0-9]+$"][ validation ]
 
Properties
protected_confirm[ validation ]
protected_dirty[ obj ]
protected_length[ validation ]
protected_maxlength[ validation ]
protected_maxvalue[ validation ]
protected_minlength[ validation ]
protected_minvalue[ validation ]
protected_pattern[ validation ]
publicproperty_objects_array[ obj ]
protected_required[ validation ]
protected_value[ validation ]
 
Methods
public__construct ( required [false] , pattern )[ validation ]
Parameters
optionalrequired [false]
optionalpattern
Code
020  public function __construct($required=false, $pattern=null)
021  {
022      $this->required = $required;
023      $this->pattern = $pattern;
024      $this->maxlength = null;
025      $this->minlength = null;
026      $this->maxvalue = null;
027      $this->minvalue = null;
028      $this->value = null;
029      $this->confirm = false;
030  }
public__get ( p )[ obj ]
Parameters
requiredp
Code
007  public function __get($p)
008  {
009      $methods = get_class_methods($this);
010      $properties = get_object_vars($this);
011      if (in_array("get_$p",$methods))
012      {
013          return $this->{"get_$p"}();
014      }
015      else if (array_key_exists("_$p",$properties))
016      {
017          return $this->{"_$p"};
018      }
019      else if (in_array("get_" . substr($p,strpos($p,"_")+1), $methods))
020      {
021          return $this->{"get_" . substr($p,strpos($p,"_")+1)}(substr($p,0,strpos($p,"_")));
022      }
023      else
024      {
025          trigger_error("This object [" . get_class($this) . ":$this->id] has no private property '_$p' for the requested public property '$p'",E_USER_WARNING);
026          return null;
027      }
028  }
publicget_array ( )[ obj ]
Parameters
No parameters for this method
Code
096  public function get_array()
097  {
098      return get_object_vars($this);
099  }
publicget_classname ( )[ obj ]
Parameters
No parameters for this method
Code
086  public function get_classname()
087  {
088      return get_class($this);
089  }
publicget_dirty ( )[ obj ]
Parameters
No parameters for this method
Code
063  public function get_dirty()
064  {
065      if ($this->id === 0)
066      {
067          $this->_dirty = true;
068      }
069      else
070      {
071          foreach (get_object_vars($this) as $k=>$v)
072          {
073              if ($this->_dirty)
074              {
075                  break;
076              }
077              if (preg_match('/_dirty$/',$k))
078              {
079                  $this->_dirty = $this->_dirty || $v;
080              }
081          }
082      }
083      return $this->_dirty;
084  }
publicget_json ( )[ obj ]
Parameters
No parameters for this method
Code
101  public function get_json()
102  {
103      $class = new ReflectionClass($this->classname);
104      $methods = $class->getMethods();
105      usort($methods,"sort_reflection_objects");
106      $accessors = array();
107      foreach ($methods as $index=>$method)
108      {
109          $declarer = $method->getDeclaringClass()->name;
110          if (preg_match('/^(get|set|)_(.+)$/',$method->name,$matches))
111          {
112              $accessor = $matches[2];
113              $getset = $matches[1];
114              eval("\$accessors[\$accessor] = \$this->".$accessor.";");
115          }
116      }
117      //return json_encode($this->get_array());
118      return json_encode($accessors);
119  }
publicget_properties ( )[ obj ]
Parameters
No parameters for this method
Code
121  public function get_properties()
122  {
123      return array_keys($this->array);
124  }
protectedget_string ( )[ obj ]
Parameters
No parameters for this method
Code
091  protected function get_string()
092  {
093      return method_exists($this,"__toString") ? $this->__toString() : null;
094  }
public__set ( p , v )[ obj ]
Parameters
requiredp
requiredv
Code
030  public function __set($p,$v)
031  {
032      $methods = get_class_methods($this);
033      $properties = get_object_vars($this);
034      if (in_array("set_$p",$methods))
035      {
036          $this->{"set_$p"}($v);
037      }
038      else if (array_key_exists("_$p",$properties))
039      {
040          if (!preg_match('/_dirty$/',$p) && property_exists($this,"_{$p}_dirty"))
041          {
042              if (is_object($this->{"_$p"}))
043              {
044                  $this->{"_$p"}->dirty = true;
045              }
046              else
047              {
048                  $this->{"_{$p}_dirty"} = $this->{$p}==$v ? false : true;
049              }
050          }
051          $this->{"_$p"} = $v;
052      }
053      else if (in_array("set_" . substr($p,strpos($p,"_")+1), $methods))
054      {
055          $this->{"set_" . substr($p,strpos($p,"_")+1)}($v,substr($p,0,strpos($p,"_")));
056      }
057      else
058      {
059          trigger_error("This object [" . get_class($this) . ":$this->id] has no private property '_$p' for the requested public property '$p'",E_USER_WARNING);
060      }
061  }
publicvalidate ( name , value )[ validation ]
Parameters
requiredname
requiredvalue
Code
032  public function validate($name,$value)
033  {
034      $valid = true;
035 
036      if ($this->required)
037      {
038          $valid = $valid && (strlen($value) > 0);
039      }
040 
041      if (!is_null($value))
042      {
043          if ($this->pattern)
044          {
045              $pattern = "/" . $this->pattern . "/";
046              $switches = null;
047              $valid = $valid && (preg_match($pattern . $switches,$value));
048          }
049          if (is_numeric($this->length))
050          {
051              $valid = $valid && (strlen($value) == $this->length);
052          }
053          if (is_numeric($this->maxlength))
054          {
055              $valid = $valid && (strlen($value) <= $this->maxlength);
056          }
057          if (is_numeric($this->minlength))
058          {
059              $valid = $valid && (strlen($value) >= $this->minlength);
060          }
061          if (is_numeric($this->maxvalue))
062          {
063              $valid = $valid && ($value <= $this->maxvalue);
064          }
065          if (is_numeric($this->minvalue))
066          {
067              $valid = $valid && ($value >= $this->minvalue);
068          }
069          if (!is_null($this->value))
070          {
071              $valid = $valid && ($value == $this->value);
072          }
073          if ($this->confirm)
074          {
075              $valid = $valid && ($value == keyval($_REQUEST,$name . "_confirm"));
076          }
077      }
078      return $valid;
079  }
 
Accessors
publicarray[ obj ]
Code
096  public function get_array()
097  {
098      return get_object_vars($this);
099  }
publicclassname[ obj ]
Code
086  public function get_classname()
087  {
088      return get_class($this);
089  }
publicdirty[ obj ]
Code
063  public function get_dirty()
064  {
065      if ($this->id === 0)
066      {
067          $this->_dirty = true;
068      }
069      else
070      {
071          foreach (get_object_vars($this) as $k=>$v)
072          {
073              if ($this->_dirty)
074              {
075                  break;
076              }
077              if (preg_match('/_dirty$/',$k))
078              {
079                  $this->_dirty = $this->_dirty || $v;
080              }
081          }
082      }
083      return $this->_dirty;
084  }
publicjson[ obj ]
Code
101  public function get_json()
102  {
103      $class = new ReflectionClass($this->classname);
104      $methods = $class->getMethods();
105      usort($methods,"sort_reflection_objects");
106      $accessors = array();
107      foreach ($methods as $index=>$method)
108      {
109          $declarer = $method->getDeclaringClass()->name;
110          if (preg_match('/^(get|set|)_(.+)$/',$method->name,$matches))
111          {
112              $accessor = $matches[2];
113              $getset = $matches[1];
114              eval("\$accessors[\$accessor] = \$this->".$accessor.";");
115          }
116      }
117      //return json_encode($this->get_array());
118      return json_encode($accessors);
119  }
publicproperties[ obj ]
Code
121  public function get_properties()
122  {
123      return array_keys($this->array);
124  }
publicstring[ obj ]
Code
091  protected function get_string()
092  {
093      return method_exists($this,"__toString") ? $this->__toString() : null;
094  }
Get Helix PHP Framework at SourceForge.net. Fast, secure and Free Open Source software downloads