Maison  >  Article  >  développement back-end  >  php中数字货币类型验证函数

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

高洛峰
高洛峰original
2016-11-29 15:43:401246parcourir

function is_number( $str )  
{  
        if ( substr( $str, 0, 1 ) == "-" )  
        {  
                $str = substr( $str, 1 );  
        }  
        $length = strlen( $str );  
        $i = 0;  
        for ( ;    $i < $length;    ++$i    )  
        {  
                $ascii_value = ord( substr( $str, $i, 1 ) );  
                if ( 48 <= $ascii_value && $ascii_value <= 57 )  
                {  
                        continue;  
                }  
                return FALSE;  
        }  
        if ( $str != "0" )  
        {  
                $str = intval( $str );  
                if ( $str == 0 )  
                {  
                        return FALSE;  
                }  
        }  
        return TRUE;  
} 
 
function is_decimal( $str )  
{  
        if ( substr( $str, 0, 1 ) == "-" )  
        {  
                $str = substr( $str, 1 );  
        }  
        $length = strlen( $str );  
        $i = 0;  
        for ( ;    $i < $length;    ++$i    )  
        {  
                $ascii_value = ord( substr( $str, $i, 1 ) );  
                if ( 0 < $i && $ascii_value == 46 || 48 <= $ascii_value && $ascii_value <= 57 )  
                {  
                        continue;  
                }  
                return FALSE;  
        }  
        return TRUE;  
} 
 
function is_money( $str )  
{  
        $dot_pos = strpos( $str, "." );  
        if ( !$dot_pos )  
        {  
                return FALSE;  
        }  
        $str1 = substr( $str, 0, $dot_pos );  
        if ( 14 < strlen( $str1 ) )  
        {  
                return FALSE;  
        }  
        if ( !is_number( $str1 ) )  
        {  
                return FALSE;  
        }  
        $str2 = substr( $str, $dot_pos + 1, strlen( $str ) - $dot_pos );  
        if ( strlen( $str2 ) != 2 )  
        {  
                return FALSE;  
        }  
        if ( !is_number( $str2 ) )  
        {  
                return FALSE;  
        }  
        return TRUE;  
} 
 
function is_money_len( $str, $int_len, $dot_len )  
{  
        $dot_pos = strpos( $str, "." );  
        if ( !$dot_pos )  
        {  
                return FALSE;  
        }  
        $str1 = substr( $str, 0, $dot_pos );  
        if ( $int_len < strlen( $str1 ) )  
        {  
                return FALSE;  
        }  
        if ( !is_number( $str1 ) )  
        {  
                return FALSE;  
        }  
        $str2 = substr( $str, $dot_pos + 1, strlen( $str ) - $dot_pos );  
        if ( strlen( $str2 ) != $dot_len )  
        {  
                return FALSE;  
        }  
        if ( !is_number( $str2 ) )  
        {  
                return FALSE;  
        }  
        return TRUE;  
}


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn