我有一个 PHP 脚本来加载 API。它很实用;但加载大约需要 15 秒。有没有办法让脚本运行得更好,从而加快加载时间?
这是 PHP:
<?php
error_reporting(0);
$apikey = "apikey=***************************";
$json = file_get_contents("https://eu.api.battle.net/wow/guild/Vek'Nilash/Renascence?fields=news&locale=en_GB&".$apikey);
$feed = json_decode($json);
$feedcount = 0;
foreach($feed->news as $newsfeed) {
if ($feedcount >= 8) {
break;
}
echo $newsfeed->character . PHP_EOL;
$type = $newsfeed->type;
// $iteminfo = $newsfeed->itemId . PHP_EOL;
$itemnumber = $newsfeed->itemId;
if ($type == "itemLoot"){
echo " has looted:";
$itemurl = file_get_contents("https://eu.api.battle.net/wow/item/$itemnumber?locale=en_GB&".$apikey);
$itemname = json_decode($itemurl);
echo " [" . $itemname->name . "]<br>";
}
elseif ($type=="itemPurchase"){
echo " has purchased:";
$itemurl = file_get_contents("https://eu.api.battle.net/wow/item/$itemnumber?locale=en_GB".$apikey);
$itemname = json_decode($itemurl);
echo " [" . $itemname->name . "]<br>";
}
elseif ($type=="playerAchievement"){
echo " has Achieved:";
echo " " . $newsfeed->achievement->title . "<br>";
}
++$feedcount;
}
?>
最佳答案
如果传输的数据很大,请尝试通过在 php 代码顶部添加以下内容来启用 gzip 压缩:
ob_start('ob_gzhandler');
如果情况并非如此,请查看这些链接,它们可能会有所帮助:
关于php - 如何优化加载 API 的 php 脚本以加快加载速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41676857/