【发布时间】:2014-11-28 10:07:26
【问题描述】:
我正在连接到 trakt.tv api,我想为自己创建一个小应用程序,显示带有评分等的电影海报。
这是我目前用来检索他们的 .json 文件的文件,其中包含我需要的所有信息。
$json = file_get_contents('http://api.trakt.tv/movies/trending.json/2998fbac88fd207cc762b1cfad8e34e6');
$movies = json_decode($json, true);
$movies = array_slice($movies, 0, 20);
foreach($movies as $movie) {
echo $movie['images']['fanart'];
}
因为 .json 文件很大,所以加载速度很慢。我只需要文件中的几个属性,例如标题、评级和海报链接。除此之外,我只需要前20个左右。如何确保只加载 .json 文件的一部分以加快加载速度?
除此之外,我没有将 php 与 .json 结合使用的经验,所以如果我的代码是垃圾并且您有建议,我很想听听。
【问题讨论】:
-
这会涉及更多。您需要一个 JSON-stream-decoder,即可以让您在 JSON 数据流入时对其进行解码的东西,而不是一次需要整个数据。然后,您将开始下载 JSON 数据,在进行过程中对其进行解码,并随时停止该过程。我不知道有哪个特定的库可以做到这一点,但我确信它们存在。
-
此外,响应相当很慢(对我来说大约需要一秒钟),因此您可能需要定义“加载速度很慢”。也许不是你的php代码而是api?