콜백 함수에 매개변수를 전달하는 방법
매개변수 전달 방법
use
을 사용하여 모든 콜백 함수에 매개변수를 전달할 수 있습니다.
참고: 더 높은 버전의 PHP만 이 구문을 지원합니다. 오류가 보고되면 설치된 PHP 버전이 너무 낮다는 의미입니다.
예
<?php require 'QueryList/vendor/autoload.php'; use QL\QueryList; $html =<<<STR <div id="demo"> xxx <a href="/yyy">链接一</a> <a href="/zzz">链接二</a> </div> STR; $baseUrl = 'http://xxx.com'; //获取id为demo的元素下的最后一个a链接的链接和文本 //并补全相对链接 //方法一 $data = QueryList::Query($html,array( 'link' => array('#demo a:last','href','',function($content) use($baseUrl){ return $baseUrl.$content; }), 'name' => array('#demo a:last','text') ))->data; print_r($data); //方法二 $data = QueryList::Query($html,array( 'link' => array('#demo a:last','href'), 'name' => array('#demo a:last','text') ))->getData(function($item) use($baseUrl){ $item['link'] = $baseUrl.$item['link']; return $item; }); print_r($data); /** 结果 Array ( [0] => Array ( [link] => http://xxx.com/zzz [name] => 链接二 ) ) */