我正在使用GTMATRIX api来获取pagespeedscore和其他数据。我正在使用这个库https://github.com/entrecore/php-gtmetrix。到目前为止,我创建了index.php文件并将结果显示为:
<?php
require_once('vendor/autoload.php');
use Entrecore\GTMetrixClient\GTMetrixClient;
use Entrecore\GTMetrixClient\GTMetrixTest;
$client = new GTMetrixClient();
$client->setUsername('shahroze.nawaz@cloudways.com');
$client->setAPIKey('e16345e33e9d3371b2d64bb93dc56189');
$client->getLocations();
$client->getBrowsers();
$test = $client->startTest('https://www.cloudways.com/en/');
//Wait for result
while ($test->getState() != GTMetrixTest::STATE_COMPLETED &&
$test->getState() != GTMetrixTest::STATE_ERROR) {
$final = $client->getTestStatus($test);
}
echo '<pre>';
var_dump($final);
echo '</pre>';
这将提供以下输出:
问题是,我无法访问受保护的媒体资源和文件网址,我们将不胜感激。
感谢。
答案 0 :(得分:1)
这是因为您返回了一个对象GTMetrixTest
如果您看一下source code of this class,您会发现所有受保护的东西都有公共吸气剂。
所以,阅读课程,你会发现这个公共职能:
/**
* @return array
*/
public function getResources() {
return $this->resources;
}
因此,在您的代码中,您将稍后致电
$resources = $final->getResources();
var_dump($resources); //should return accessible array