在PHP中从另一个数字中提取一个数字
所以今晚我试图创建一个函数来检查信用卡是否有效。 但是我被困在这里了。 在我的计算中,我得到的数字是10,56,30。。。一个数字加上两个数字 (我的意思是,1是一个有1个数字的数字,就像2,3,4,5,6,7,8,9..有两个数字的数字会高出10个。) 我需要做的是:在PHP中从另一个数字中提取一个数字,php,Php,所以今晚我试图创建一个函数来检查信用卡是否有效。 但是我被困在这里了。 在我的计算中,我得到的数字是10,56,30。。。一个数字加上两个数字 (我的意思是,1是一个有1个数字的数字,就像2,3,4,5,6,7,8,9..有两个数字的数字会高出10个。) 我需要做的是: 获取第一个数字并将其添加到新变量中,然后对另一个变量执行相同的操作 例如: 我有这个号码->23 我需要: $var1=2 $var2=3 我想使用函数subtr,但它似乎不适用于数字 谢谢你的阅读 我希望你能从中有所收获。
- 获取第一个数字并将其添加到新变量中,然后对另一个变量执行相同的操作
谢谢你的阅读 我希望你能从中有所收获。首先将数字转换为字符串,然后使用substr()拆分数字,然后再次将拆分后的值转换为整数:
$num = 23;
$str_num = (string)$num;
$var1 = (int)substr($str_num, 0, 1);
$var2 = (int)substr($str_num, 1, 1);
或者使用纯数字:
$num = 23;
$var2 = $num % 10;
$var1 = ($num - $var2) / 10;
信用卡号可以通过一种叫做
如果你在项目中需要这个,不要重新发明轮子。在github上查看。这里有一种方法可以使用纯数字来实现这一点(而不必转换为字符串)。这也适用于分配给$var1,$var2,…,的任意长度的数字$varn表示n个长度的数字
$num = 23;
$count = 1;
while ($num > 0) {
$var = "var".$count++;
$$var = $num % 10;
$num = intval($num / 10);
}
数值解
$num = 23;
$var1 = floor($num / 10);
$var2 = $num % 10;
echo "$var1 $var2";
我不理解你的方法,但正确的方法是^^^^^^^^^^^^^^^^^我正试图使用Luhn算法来创建我自己的类。