如何分隔数字并获取PHP中的前两位数字?

Jen*_*ony 10 php

如何分隔数字并获取PHP中的前两位数字?

例如:1345- >我想要这个输出=> 13或者1542我想要15.

oez*_*ezi 23

一种可能性是使用substr:

echo substr($mynumber, 0, 2);
Run Code Online (Sandbox Code Playgroud)

编辑:
请不要像hakre说的那样,这会打破负数或带小数位的小数字.他的解决方案是更好的解决方案,因为他正在做一些检查来避免这种情况.

  • 这非常脆弱([Demo](http://codepad.org/ogARCT6r))并且仅在某些情况下才能完成工作. (3认同)

hak*_*kre 7

首先,您需要规范化您的号码,因为并非PHP中的所有数字都只包含数字.您可能正在寻找整数:

$number = (int) $number;
Run Code Online (Sandbox Code Playgroud)

您可以运行在这里的问题是整数的PHP或倒圆的一系列问题,见整数文件,INF想到为好.

由于数字现在是一个整数,您可以在字符串上下文中使用它并提取前两个字符,如果数字不是负数,它将是前两个数字.如果数字为负数,则需要保留符号:

$twoDigits = substr($number, 0, $number < 0 ? 3 : 2);
Run Code Online (Sandbox Code Playgroud)

参见演示.


Spu*_*ley 5

不应该太辛苦吗?一个简单的子字符串就可以解决问题(您可以将数字视为字符串,例如PHP等松散类型的语言)。

有关substr()功能,请参见PHP手册页。

像这样:

$output = substr($input, 0, 2); //get first two characters (digits)
Run Code Online (Sandbox Code Playgroud)