我已经使用 PHP 很长时间了,但直到最近才真正使用回调。在下面的代码中,回调(示例是 QueryPath,如果您想知道,但它可以是任何接受回调的东西)将添加一些指向数组的链接:
// parse any product links out of the html
$aProducts = array();
qp( $html, 'a' )->each(function($index, $element){
global $aProducts;
$link = qp($element)->attr('href');
$pregMatch = preg_match('@(.*)-p-(.*)\.html@i', $link, $matches);
if( $pregMatch ) {
$product_id = (int)$matches[2];
if( !in_array($product_id, $aProducts) ) {
$aProducts[] = $product_id;
}
}
});
// print out our product array
print_r( $aProducts );
使用的替代方法是什么global $aProducts
(如果有的话)?