簡體   English   中英

使用 php 從 URL 獲取解碼 json 以顯示最新版本的 fontawesome

[英]Get decode json from URL using php for displaying latest version of fontawesome

我想顯示最新版本的 fontawesome 版本。 但我有這個問題。 我的腳本只顯示空白頁。 請幫我。

<?php 
$url = 'https://data.jsdelivr.com/v1/package/gh/FortAwesome/Font-Awesome';
$data = file_get_contents($url);
$characters = json_encode($data);
echo $characters[0]->versions;

foreach ($characters as $character) {
echo $character->versions . '<br>';
}
?>

工作代碼:

<?php
$url = 'https://data.jsdelivr.com/v1/package/gh/FortAwesome/Font-Awesome';
$data = file_get_contents($url);

//Use json_decode instead of json_encode
$characters = json_decode($data);

// Use var_dump or print_r to show an object
var_dump($characters->versions);

foreach ($characters->versions as $version) {
    echo $version . '<br>';
}

除了混淆“編碼”和“解碼”之外,您可能還有另一個看不見的問題,因此請從以下最低限度開始。

<?php
$url = 'https://data.jsdelivr.com/v1/package/gh/FortAwesome/Font-Awesome';
$data = file_get_contents($url);
var_dump(json_decode($data));
?>

我從中得到的結果的開始是:

object(stdClass)#1 (2) {
  ["tags"]=>
  array(0) {
  }
  ["versions"]=>
  array(50) {
    [0]=>
    string(5) "5.9.0"
    [1]=>
    string(5) "5.8.2"
...

PHP版本信息:

php --version
PHP 7.3.6 (cli) (built: Jul  3 2019 20:46:48) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies

可重現:

docker run --rm -i -t php bash
apt-get update && apt-get install -y vim
vim test.php
php test.php

啟用調試后,網絡(代理或類似的)可能是您主機的問題。

Warning: file_get_contents(...): failed to open stream: No route to host

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM