首页 > 语言 > PHP > 正文

php中数字货币类型验证函数

2024-09-04 11:48:35
字体:大 中 小
来源:转载
供稿:网友
  1. function is_number( $str )  
  2. {  
  3.         if ( substr( $str, 0, 1 ) == "-" )  
  4.         {  
  5.                 $str = substr( $str, 1 );  
  6.         }  
  7.         $length = strlen( $str );  
  8.         $i = 0;  
  9.         for ( ;    $i < $length;    ++$i    )  
  10.         {  
  11.                 $ascii_value = ord( substr( $str, $i, 1 ) );  
  12.                 if ( 48 <= $ascii_value && $ascii_value <= 57 )  
  13.                 {  
  14.                         continue;  
  15.                 }  
  16.                 return FALSE;  
  17.         }  
  18.         if ( $str != "0" )  
  19.         {  
  20.                 $str = intval( $str );  
  21.                 if ( $str == 0 )  
  22.                 {  
  23.                         return FALSE;  
  24.                 }  
  25.         }  
  26.         return TRUE;  
  27. } 
  28.  
  29. function is_decimal( $str )  
  30. {  
  31.         if ( substr( $str, 0, 1 ) == "-" )  
  32.         {  
  33.                 $str = substr( $str, 1 );  
  34.         }  
  35.         $length = strlen( $str );  
  36.         $i = 0;  
  37.         for ( ;    $i < $length;    ++$i    )  
  38.         {  
  39.                 $ascii_value = ord( substr( $str, $i, 1 ) );  
  40.                 if ( 0 < $i && $ascii_value == 46 || 48 <= $ascii_value && $ascii_value <= 57 )  
  41.                 {  
  42.                         continue;  
  43.                 }  
  44.                 return FALSE;  
  45.         }  
  46.         return TRUE;  
  47. } 
  48.  
  49. function is_money( $str )  
  50. {  
  51.         $dot_pos = strpos( $str, "." );  
  52.         if ( !$dot_pos )  
  53.         {  
  54.                 return FALSE;  
  55.         }  
  56.         $str1 = substr( $str, 0, $dot_pos );  
  57.         if ( 14 < strlen( $str1 ) )  
  58.         {  
  59.                 return FALSE;  
  60.         }  
  61.         if ( !is_number( $str1 ) )  
  62.         {  
  63.                 return FALSE;  
  64.         }  
  65.         $str2 = substr( $str, $dot_pos + 1, strlen( $str ) - $dot_pos );  
  66.         if ( strlen( $str2 ) != 2 )  
  67.         {  
  68.                 return FALSE;  
  69.         }  
  70.         if ( !is_number( $str2 ) )  
  71.         {  
  72.                 return FALSE;  
  73.         }  
  74.         return TRUE;  
  75. } 
  76.  
  77. function is_money_len( $str, $int_len, $dot_len )  
  78. {  
  79.         $dot_pos = strpos( $str, "." );  
  80.         if ( !$dot_pos )  
  81.         {  
  82.                 return FALSE;  
  83.         }  
  84.         $str1 = substr( $str, 0, $dot_pos );  
  85.         if ( $int_len < strlen( $str1 ) )  
  86.         {  
  87.                 return FALSE;  
  88.         }  
  89.         if ( !is_number( $str1 ) )  
  90.         {  
  91.                 return FALSE;  
  92.         }  
  93.         $str2 = substr( $str, $dot_pos + 1, strlen( $str ) - $dot_pos );  
  94.         if ( strlen( $str2 ) != $dot_len )  
  95.         {  
  96.                 return FALSE;  
  97.         }  
  98.         if ( !is_number( $str2 ) )  
  99.         {  
  100.                 return FALSE;  
  101.         }  
  102.         return TRUE;  
  103. } 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表