如何从两位数字中获取数字?

时间:2009-10-29 10:40:20

标签: php

我想从两位数得到单个数字。例如,如果36我需要将3和6存储在不同的变量中。是否可能?

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)

One of the ways

// 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