我有这段代码,无论何时运行,它都会执行两次。这是一个问题,因为我需要为用户显示此信息。
我对阵列有点不熟悉,因此我希望你对这个主题有所了解。
我的代码如下:
$wwwLink = "http://agynix.com/";
$IMEIapproved = false;
$data = file_get_contents($wwwLink);
//In the pattern the "class" is the div class, and the "div-res" is the value of the class
$pattern = '%<div\b[^>]*?\bclass\s*+=\s*+([\'"]?+)\bdiv-res\b(?(1)\1)[^>]*+>((?:[^<]++|<(?!/?div\b|!--)|<!--.*?-->|<div\b[^>]*+>(?2)</div\s*>)*+)</div\s*>%isx';
$matchcount = preg_match_all($pattern, $data, $matches);
if ($matchcount > 0) {
print_r($matches);
}
else {
echo "Holy shit! Back to the drawing board";
}
我的问题是;我如何使这段代码只检索一次信息?它是echo/print_r
,它是数组信息,它是模式,还是我的无能?
答案 0 :(得分:0)
我不确定它是否有帮助,但是......你知道preg_match_all
将$matches[0]
字符串放入与整个表达式相匹配的字符串中并放入$mathches[1]
- 字符串中匹配第一个带括号的子表达式?。