PHP如何中如何截取1001001523中的1001523?

就是要获取从第二个非0开始的部分数字

阅读 2.7k
4 个回答
function getnumber($src_num) {
    $str = strval($src_num);    // 转字符串
    $index = strpos($str, '0');    // 获取第一个0的下标
    $index2 = strpos($str, '0', $index + 1);    // 第二个0的下标
    $dst_num = intval(substr($str, $index2 + 1));    // 根据下标截取字符串,转整型
    var_dump($dst_num);
    return $dst_num;
}

你的需求似乎有点问题,非零开始的部分字符串
1001001523整个就是

(int)substr(1001001523, 1);

挺简单的,不需要大段的代码

$str = '1001001523';
$char_list = '123456789';
$first = strpbrk($str, $char_list);
if ($first !== false) {
    $first = substr($first, 1);
    $second = strpbrk($first, $char_list);
    if ($second !== false) {
        print_r($second);
    }
}

思路大致是这样,你可以自己封装成方法优化下

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题