Preg_match 值 url 计数多个 url

Preg_match value url count for multiple url's

如何才能 preg_match 直到找不到更多结果?

我正在使用文件获取内容

例如我正在使用这个url

$updated_url = "https://www.testcompany.com/count=1";

$html2 = file_get_contents($updated_url);  
preg_match_all('/<ul class="standard">(.*?)<\/ul>/s', $html2, $test);

1) 如果 > preg_match 为真 > 在 url 中添加 count = +1(转到 https://www.testcompany.com/count=2 url)并检查 preg 匹配值是否为真与否。

2) 循环 If 直到 preg_match 为假。

我想获取最后一个 url 与 preg 匹配值匹配的值。

你可以试试这个:

<?php

const URL_PATTERN = 'https://www.testcompany.com/count=%s';
$regex = '/<ul class="standard">(.*?)<\/ul>/m';
$previousMatchList = [];
$matchList = [];

for ($count = 1; ; $count++) {
    $html2 = file_get_contents(sprintf(URL_PATTERN, $count));
    preg_match_all($regex, $html2, $matchList);

    if (!array_filter($matchList)) {
        break;
    }

    $previousMatchList = $matchList;
}

$lastValue = array_pop($previousMatchList[0]);

var_dump($lastValue);

:)