我想从两位数得到单个数字。例如,如果36我需要将3和6存储在不同的变量中。是否可能?
答案 0 :(得分:7)
你用简单的数学来解决这个问题。
首先,考虑一下这究竟是什么,如果你分解它,3 * 10 + 6
,对吧?
因此,在这种情况下,第一个数字代表您的时间10,您将通过除以10获得:
36 / 10 = 3.xxxxx
现在,如果你四舍五入,你得到3,这是第一个数字。
剩下的那个怎么样?好吧,为此你必须使用一些名为modulo的东西,有时很难理解。但它可以取出整数除法的左边。
IT基本意味着当你36 % 10
时,你会得到6.为什么你会这么想?尝试打开计算器并输入数字:36 / 10 = 3.6
,左边是6!
解决方案代码
<?php
$theNumber = 36;
$first = floor($theNumber / 10);
$second = $theNumber % 10;
?>
您可以查看函数floor here.
分割字符串的替代解决方案
如果您正在寻找在PHP中拆分字符串的其他方法,可以使用str_split,这将为您提供array个字符。
示例强>
<?php
$myString = "36 is my number";
$splittedString = str_split($myString);
echo $splittedString[0];
echo $splittedString[1];
?>
只需将其用作array
即可答案 1 :(得分:3)
基本上
“string”方式
$s = (string) $i;
$one = $s[0];
$two = $s[1];
“数学”方式
$two = $i % 10;
$one = ($i - $two) / 10;
答案 2 :(得分:1)
这样:
$int = 36;
$str = (string)$int;
var_dump($str[0], $str[1]);
答案 3 :(得分:1)
// Accessing single characters in a string
// can also be achieved using "square brackets"
$string = 'abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
答案 4 :(得分:1)
字符串可以作为数组访问。如果您将数字转换为字符串(或者它已经是一个 - 您没有提及),您可以单独处理数字,然后可选地将它们转换回整数:
$num = strval(36);
echo intval($num[0]); // 3
echo intval($num[1]); // 6
答案 5 :(得分:0)
这不是PHP代码!! (没看到标签)
int num = 36;
int first = num / 10; // 3
int second = num % 10; // 6