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

 代码如下 复制代码

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;
}

时间: 2024-11-01 01:46:00

php中数字货币类型验证函数的相关文章

精华区中的“货币大写转换函数”用起来不是很方便,修改如下:

大写|函数|货币|精华|转换 <%Function ChangeNumToDx(SourceNum)    Dim String1    '如下定义    Dim String2    '如下定义    Dim String3    '从原SourceNum值中取出的值    Dim I         '循环变量    Dim J         'SourceNum的值乘以100的字符串长度    Dim Ch1        '数字的汉语读法    Dim Ch2        '数字位的

精华区中的“货币大写转换函数的更新!”是有问题的

大写|函数|货币|精华|问题|转换 不信你拿1000000让它试试,出来的是壹百元整还有,拿10000000来试的话,出来的是壹仟元整

Excel表格中数字金额大小写转换函数

  实际相当于函数=NUMBERSTRING(1234567890,3),参数为3时,输出结果直接为独立数字大写. 实际相当于函数=NUMBERSTRING(1234567890,2),参数为2时,输出结果直接为金额大写. 实际相当于函数=NUMBERSTRING(1234567890,1),参数为2时,输出结果直接为整个数字的大写. value值用的是引用表格,和直接输入数字是一样

javascript 数字与传真号码验证函数

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-

Excel2010中设置货币数字格式

  货币数字格式仅适用于Excel2010单元格中的数据为货币数字的情况,设置为货币数字格式的单元格中将添加指定的货币符号.在Excel2010中设置货币数字格式的步骤如下所述: 第1步,打开Excel2010工作簿窗口,选中需要设置货币数字格式的单元格.然后右键单击选中的单元格,在打开的快捷菜单中选择"设置单元格格式"命令,如图1所示. 图1 选择"设置单元格格式"命令 第2步,打开Excel"设置单元格格式"对话框,切换到"数字&q

央行:区块链规模应用于数字货币的可行性仍待验证

节前,央行推动的基于区块链的数字票据交易平台已测试成功.春节后,央行旗下的数字货币研究所也将正式挂牌.这意味着在全球范围内,中国央行将成为首个研究数字货币及真实应用的中央银行. 26日,中国证券报专访了中国人民银行科技司司长李伟,就区块链适用场景.技术存在的风险.是否适用于数字货币等问题进行了解答. 中国证券报:区块链技术在金融领域比较适合于哪些业务场景? 李伟:作为新技术,区块链技术在系统稳定性.应用安全性.业务模式等方面尚未成熟,目前主要适用于以下业务场景: 1 非实时性的业务场景.由于点对

JQuery数字类型验证正则表达式

js验证数字正则表达式  代码如下 复制代码 function istrue(a){ var reg=/^(([a-z]+[0-9]+)|([0-9]+[a-z]+))[a-z0-9]*$/i; return reg.test(a); } function   isNumeric(a) {     var   reg=/^(-|+)?d+(.d+)?$/    return(reg.test(a)); } //检查是否为正数 function   isUnsignedNumeric(a) {  

在Excel2010中设置分数类型数字格式

在Excel2010工作表中,用户可以将被选中单元格中的小数设置分数表示,Excel2010的分数格式将小数四舍五入为值最接近的分数.在分数类别中,用户可以选择分母分别为2.4.8.16.10和100的分数,并且可以设置分母的位数(包括1位分母.2位分母和3位分母). 在Excel2010工作表中设置分数类型数字格式的步骤如下所述: 工具/原料 Excel2010 步骤/方法 第1步,打开Excel2010工作簿窗口,选中需要设置分数类型数字格式的单元格.右键单击被选中的单元格,在打开的快捷菜单

Excel2010中设置分数类型数字格式

  在Excel2010工作表中,用户可以将被选中单元格中的小数设置分数表示,Excel2010的分数格式将小数四舍五入为值最接近的分数.在分数类别中,用户可以选择分母分别为2.4.8.16.10和100的分数,并且可以设置分母的位数(包括1位分母.2位分母和3位分母). 在Excel2010工作表中设置分数类型数字格式的步骤如下所述: 第1步,打开Excel2010工作簿窗口,选中需要设置分数类型数字格式的单元格.右键单击被选中的单元格,在打开的快捷菜单中选择"设置单元格格式"命令,