PHP 正则表达式 - 获取字符串中的订单 ID(8 位长,以 0 开头)

PHP Regex - Get Order ID (8 digits long, starts with 0) within a string

我有以下字符串

ORDER/07656473/STATUS

其中 07656473 是我店内的订单参考。

我目前有一个函数可以像这样从所述字符串中提取订单引用

public function getOrderReference()
{
  $regex = '/ORDER\/([0-9]{8})\/STATUS/';

  if (preg_match($regex, $this->string, $output)) {
    return $output[1];
  }

  return false;
}

现在成功获得订单参考,因为它只是数字,长度为 8 个数字,介于 ORDERSTATUS 之间。

但是我需要能够在正则表达式中添加引用应始终以 0 开头的内容。 我怎样才能做到这一点?

我看过这样的东西STATUS\/(0)([0-9]{7})\/ACCEPTED 但它随后将订单参考拆分为多个部分(0 和 7656473),我需要将其作为一个整体保留。

I had looked at something like this STATUS\/(0)([0-9]{7})\/ACCEPTED But it then splits the order reference in parts (0 and then 7656473) where as I need it to keep it as a whole.

那就不要将匹配结果分组的圆括号分成两组。保留一个组,把0移到class:

字符前

STATUS\/(0[0-9]{7})\/ACCEPTED