Advertisement
Guest User

Untitled

a guest
Jun 2nd, 2015
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.87 KB | None | 0 0
  1. function validate ($data, $check_required=True, $use_default=True) {
  2.         $default = array(
  3.             'code' => array(
  4.                 'required' => True,
  5.                 'validate' => is_string
  6.             ),
  7.             'name' => array(
  8.                 'required' => True,
  9.                 'validate' => is_string
  10.             ),
  11.             'active' => array(
  12.                 'required' => False,
  13.                 'validate' => is_bool,
  14.                 'default' => False
  15.             ),
  16.             'from' => array(
  17.                 'required' => False,
  18.                 'validate' => is_string,
  19.                 'default' => ''
  20.             ),
  21.             'to' => array(
  22.                 'required' => True,
  23.                 'validate' => is_string
  24.             ),
  25.             'subject' => array(
  26.                 'required' => False,
  27.                 'validate' => is_string,
  28.                 'default' => ''
  29.             ),
  30.             'body' => array(
  31.                 'required' => False,
  32.                 'validate' => is_string,
  33.                 'default' => ''
  34.             )
  35.         );
  36.         $errors = array();
  37.         $fields = array();
  38.         foreach ($default as $key => $rules) {
  39.             if (empty($data[$key])) {
  40.                 if ($rules['required']) {
  41.                     if ($check_required) {
  42.                         $errors[] = "Field $key is required";
  43.                     }
  44.  
  45.                     continue;
  46.                 }
  47.                 if ($use_default) {
  48.                     $fileds[$key] = $rules['default'];
  49.                 }
  50.  
  51.                 continue;
  52.             }
  53.  
  54.             if (!$rules['validate']($data[$key])) {
  55.  
  56.                 $errors[] = "Validation failed on $key = $data[$key]";
  57.             }
  58.  
  59.             $fields[$key] = $data[$key];
  60.         }
  61.  
  62.         print_r($fields);
  63.         return array($errors, $fields);
  64.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement