减少初始服务器响应时间服务器端

问题描述 投票:0回答:1

GTmetrix 在我的网页之一上找到“减少初始服务器响应时间”“减少 TTFB”,只有一个请求 php 页面。请问您有什么需要改进的地方吗? 我从游戏 api 中获取值。

<?php

          $clantag = "#IDCLAN"; // #Clantag (capital letters)
          $clantag2 = "clans";
          $clantag3 = "clanwars";
          $clantag4 = "#IDCLAN2";
          $clantag5 = "#IDCLAN3";

          $token = "Token";
          $url = "https://api.clashroyale.com/v1/clans/" . urlencode($clantag);
          $ch = curl_init($url);

          $headr = array();
          $headr[] = "Accept: application/json";
          $headr[] = "Authorization: Bearer " . $token;

          curl_setopt($ch, CURLOPT_HTTPHEADER, $headr);
          curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
          curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

          $res = curl_exec($ch);
          $data = json_decode($res, true);
          curl_close($ch);

          $url2 = "https://api.clashroyale.com/v1/locations/57000087/rankings/" . urlencode($clantag2);
          $ch2 = curl_init($url2);

          $headr2 = array();
          $headr2[] = "Accept: application/json";
          $headr2[] = "Authorization: Bearer " . $token;

          curl_setopt($ch2, CURLOPT_HTTPHEADER, $headr2);
          curl_setopt($ch2, CURLOPT_SSL_VERIFYHOST, false);
          curl_setopt($ch2, CURLOPT_SSL_VERIFYPEER, false);
          curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);


          $res2 = curl_exec($ch2);
          $data2 = json_decode($res2, true);
          curl_close($ch2);

          $url3 = "https://api.clashroyale.com/v1/locations/57000087/rankings/" . urlencode($clantag3);
          $ch3 = curl_init($url3);

          $headr3 = array();
          $headr3[] = "Accept: application/json";
          $headr3[] = "Authorization: Bearer " . $token;

          curl_setopt($ch3, CURLOPT_HTTPHEADER, $headr3);
          curl_setopt($ch3, CURLOPT_SSL_VERIFYHOST, false);
          curl_setopt($ch3, CURLOPT_SSL_VERIFYPEER, false);
          curl_setopt($ch3, CURLOPT_RETURNTRANSFER, 1);


          $res3 = curl_exec($ch3);
          $data3 = json_decode($res3, true);
          curl_close($ch3);

          $url4 = "https://api.clashroyale.com/v1/clans/" . urlencode($clantag4);
          $ch4 = curl_init($url4);

          $headr4 = array();
          $headr4[] = "Accept: application/json";
          $headr4[] = "Authorization: Bearer " . $token;

          curl_setopt($ch4, CURLOPT_HTTPHEADER, $headr4);
          curl_setopt($ch4, CURLOPT_SSL_VERIFYHOST, false);
          curl_setopt($ch4, CURLOPT_SSL_VERIFYPEER, false);
          curl_setopt($ch4, CURLOPT_RETURNTRANSFER, 1);

          $res4 = curl_exec($ch4);
          $data4 = json_decode($res4, true);
          curl_close($ch4);

          $url5 = "https://api.clashroyale.com/v1/clans/" . urlencode($clantag5);
          $ch5 = curl_init($url5);

          $headr5 = array();
          $headr5[] = "Accept: application/json";
          $headr5[] = "Authorization: Bearer " . $token;

          curl_setopt($ch5, CURLOPT_HTTPHEADER, $headr5);
          curl_setopt($ch5, CURLOPT_SSL_VERIFYHOST, false);
          curl_setopt($ch5, CURLOPT_SSL_VERIFYPEER, false);
          curl_setopt($ch5, CURLOPT_RETURNTRANSFER, 1);

          $res5 = curl_exec($ch5);
          $data5 = json_decode($res5, true);
          curl_close($ch5);

          $clanScore = $data['clanScore'];
          $clanWarTrophies = $data['clanWarTrophies'];
          $requiredTrophies = $data['requiredTrophies'];
          $donationsPerWeek = $data['donationsPerWeek'];
          $members = $data['members'];

          echo "<p>&#9312<br> Score: ", $clanScore, "<br>GDC: ", $clanWarTrophies, "<br>Entrée: ", $requiredTrophies, "<br>Dons: ", $donationsPerWeek, "<br>Membres: ", $members, "</p>";

          $array = $data2['items'];

          foreach ($array as $key => $val) {
            if ($val['tag'] === '#IDCLAN') {
              echo "<p>Top FR Ladder: ", $val['rank'], "</p>";
            }
          }

          $array2 = $data3['items'];

          foreach ($array2 as $key => $val) {
            if ($val['tag'] === '#IDCLAN') {
              echo "<p>Top FR GDC: ", $val['rank'], "</p>";
            }
          }

          $clanScore = $data4['clanScore'];
          $clanWarTrophies = $data4['clanWarTrophies'];
          $requiredTrophies = $data4['requiredTrophies'];
          $donationsPerWeek = $data4['donationsPerWeek'];
          $members = $data4['members'];

          echo "<p>&#9313<br> Score: ", $clanScore, "<br>GDC: ", $clanWarTrophies, "<br>Entrée: ", $requiredTrophies, "<br>Dons: ", $donationsPerWeek, "<br>Membres: ", $members, "</p>";

          $array = $data2['items'];

          foreach ($array as $key => $val) {
            if ($val['tag'] === '#IDCLAN2') {
              echo "<p>Top FR Ladder: ", $val['rank'], "</p>";
            }
          }

          $array2 = $data3['items'];

          foreach ($array2 as $key => $val) {
            if ($val['tag'] === '#IDCLAN2') {
              echo "<p>Top FR GDC: ", $val['rank'], "</p>";
            }
          }

          $clanScore = $data5['clanScore'];
          $clanWarTrophies = $data5['clanWarTrophies'];
          $requiredTrophies = $data5['requiredTrophies'];
          $donationsPerWeek = $data5['donationsPerWeek'];
          $members = $data5['members'];

          echo "<p>&#9314<br> Score: ", $clanScore, "<br>GDC: ", $clanWarTrophies, "<br>Entrée: ", $requiredTrophies, "<br>Dons: ", $donationsPerWeek, "<br>Membres: ", $members, "</p>";

          $array = $data2['items'];

          foreach ($array as $key => $val) {
            if ($val['tag'] === '#IDCLAN3') {
              echo "<p>Top FR Ladder: ", $val['rank'], "</p>";
            }
          }

          $array2 = $data3['items'];

          foreach ($array2 as $key => $val) {
            if ($val['tag'] === '#IDCLAN3') {
              echo "<p>Top FR GDC: ", $val['rank'], "</p>";
            }
          }
          ?>

在我的 index.php 主页

 <p><?php include("scriptcrfull.php"); ?></p>

我试图放置一个缓存系统,但我的值不断变化并且不会直接在我的页面上刷新。

 </head>
    <?php flush(); ?>
    <body>
php server-side
1个回答
-2
投票

好的,谢谢。如果我可以通过 curl 同时对我的代码进行一些修改来执行请求,那可能会更好。但我认为这很难。你怎么看?

© www.soinside.com 2019 - 2024. All rights reserved.