检查字符串是否以PHP中的数字开头

Kir*_*met 7 php string numbers

可能重复:
检查字符串是否以PHP中的数字结尾

我正在尝试实现下面的功能.这里使用某种类型的正则表达式最好吗?我也需要捕获这个数字.

function startsWithNumber($string) {
  $startsWithNumber = false;

  // Logic

  return $startsWithNumber;
}
Run Code Online (Sandbox Code Playgroud)

Gum*_*mbo 17

你可以使用substrctype_digit:

function startsWithNumber($string) {
    return strlen($string) > 0 && ctype_digit(substr($string, 0, 1));
}
Run Code Online (Sandbox Code Playgroud)

附加strlen只是需要作为ctype_digit回报真正的PHP 5.1之前,一个空字符串.

或者,如果您想要使用正则表达式:

function startsWithNumber($str) {
    return preg_match('/^\d/', $str) === 1;
}
Run Code Online (Sandbox Code Playgroud)

  • 我更喜欢这种方法..非常简单 (2认同)

Thi*_*ker 6

这样的事可能对你有用:

function str2int($string) {
  $length = strlen($string);   
  for ($i = 0, $int = ''; $i < $length; $i++) {
    if (is_numeric($string[$i]))
        $int .= $string[$i];
     else break;
  }

  return (int) $int;
}
Run Code Online (Sandbox Code Playgroud)