You are here

function my_validate_number in Phone Number 7

Same name and namespace in other branches
  1. 6 includes/phone.my.inc \my_validate_number()

Verifies that $number is a valid Malaysia phone number.

Parameters

$number: Digits only value.

$ext: Digits only value.

$error: The error message to shown to user. Available parameters to use in the error message are

  • "%countrycode": the alpha-2 CC
  • "%phone_input": the original number input by user (could be invalid)
  • "%max_length": allowed maximum length of the phone number

Return value

boolean TRUE if it is a valid phone number for that country, FALSE otherwise.

File

includes/phone.my.inc, line 62
CCK Field for Malaysia phone numbers.

Code

function my_validate_number($number, $ext = '', &$error) {

  // We don't want to worry about separators
  $number = cck_phone_clean_number($number);
  foreach (_my_phone_rules() as $rule) {

    // define regular expression
    $regex = '/^
      ([0]*)                             # an optional 0
      (' . $rule[0] . ')                   # area code
      \\d{' . $rule[1] . '}                 # local number within length $rule[1] & $rule[2]
      $/x';
    $result = preg_match($regex, $number, $matches);
    if ($result) {
      return TRUE;
    }
  }

  // t() is no needed
  $error = '"%phone_input" is not a valid Malaysia phone number, it should be a 9-10 digit number like "03-2222 2222", "0" is optional and will be removed.';
  return FALSE;
}