不知道如何在 php 中链接 json 100%

Posted

技术标签:

【中文标题】不知道如何在 php 中链接 json 100%【英文标题】:Not sure how to link json 100% in php 【发布时间】:2011-02-15 15:45:06 【问题描述】:

我正在尝试创建我的 droid 应用程序读取的 rss 提要,但我有一些漏洞,我可以弄清楚如何修复 json 链接页面是 http://www.mandarich.com/mandarichServer/mlb/indexbaseball.php 在读取 json 时,我可以看到某些图标丢失的位置,并且无法弄清楚为什么。主要只适用于像纽约和芝加哥这样的城市(有两个名字的城市) 我的php代码如下:

<?php

$teams["boston"] = "bostonredsox.gif";
$teams["nyyankees"] = "nyyankees.gif";
$teams["baltimore"] = "baltimoreorioles.gif";
$teams["tampa"] = "tampabayrays.gif";
$teams["toronto"] = "torontobluejays.gif";
$teams["atlanta"] = "atlantabraves.gif";
$teams["florida"] = "floridamarlins.gif";
$teams["nymets"] = "newyorkmets.gif";
$teams["philadelphia"] = "philadelphiaphillies.gif";
$teams["washington"] = "washingtonnationals.gif";
$teams["chicagosox"] = "chicagowhitesox.gif";
$teams["cleveland"] = "clevelandindians.gif";   
$teams["detroit"] = "detroittigers.gif";
$teams["kansas"] = "kansascityroyals.gif";
$teams["minnesota"] = "minnesotatwins.gif";
$teams["chicagocubs"] = "chicagocubs.gif";
$teams["cincinnati"] = "cinncinatireds.gif";
$teams["houston"] = "houstonastros.gif";
$teams["milwaukee"] = "milwaukeebrewers.gif";
$teams["pittsburgh"] = "pitsburghpirates.gif";
$teams["St.Louis"] = "stlouiscardinals.gif";
$teams["LaAngels"] = "losangelesangels.gif";
$teams["oakland"] = "oaklandathletics.gif";
$teams["seattle"] = "seattlemariners.gif";
$teams["texas"] = "texasrangers.gif";
$teams["arizona"] = "arizonadiamondbacks.gif";
$teams["colorado"] = "coloradorockies.gif";
$teams["ladodgers"] = "losangelesdodgers.gif";
$teams["sandiego"] = "sandiegopadres.gif";
$teams["sanfrancisco"] = "sanfranciscogiants.gif";


$abbr["arizona"] = "ARI";
$abbr["oakland"] = "OAK";
$abbr["baltimore"] = "BAL";
$abbr["tampa"] = "TAM";
$abbr["boston"] = "BOS";
$abbr["nyyankees"] = "NYY";
$abbr["texas"] = "TEX";
$abbr["toronto"] = "TOR";
$abbr["LaAngels"] = "LAA";
$abbr["atlanta"] = "ALT";
$abbr["colorado"] = "COL";
$abbr["philadelphia"] = "PHI";  
$abbr["florida"] = "FLA";
$abbr["milwaukee"] = "MIL";
$abbr["washington"] = "WAS";
$abbr["chicagosox"] = "CHW";
$abbr["cleveland"] = "CLE";
$abbr["detroit"] = "DET";
$abbr["seattle"] = "SEA";
$abbr["sanfrancisco"] = "SFO";
$abbr["St.Louis"] = "STL";
$abbr["chicagocubs"] = "CHC";
$abbr["houston"] = "HOU";
$abbr["nymets"] = "NYM";
$abbr["cincinnati"] = "CIN";
$abbr["sandiego"] = "SDG";
$abbr["ladodgers"] = "LAD";
$abbr["pittsburgh"] = "PIT";
$abbr["minnesota"] = "MIN";
$abbr["kansas"] = "KAN";
?>

【问题讨论】:

为您的图像使用绝对路径,例如:http://www.domain.com/img/1.jpg 好吧,它们中的大多数都没有问题地显示出来,只是一对夫妇没有也无法弄清楚那部分。 我想看看 st louis 失败的原因是否与它是唯一包含句点的数组键有关。 slt abbrev 现在可以正常工作,只需将 S 和 L 加盖,但仍然无法弄清楚为什么某些团队图标无法正常工作 那绝对不是你链接的 RSS。它正在返回 JSON。 【参考方案1】:

圣。 Louis 在$abbr 中是st.louis,在$teams 中是stlouis。这可能是导致该问题的原因。

至于其中一些出现而一些没有出现,我敢打赌你的问题是你使用team1team2 来查找图像是什么。如果是这种情况,那么您遇到了大写/小写问题。将所有内容设为小写。最重要的是,team* 中有空格,这会导致问题。所以不要使用la dodgers,而是尝试ladodgers

希望这会有所帮助。

【讨论】:

让圣路易斯工作了,所有代码现在都显示 abrrev 并且在我的索引 php 代码中它都是小写的,但仍然只有某些图标丢失。 我没想到只是将所有问题文件都放在本地占用了更多空间但可以工作。

以上是关于不知道如何在 php 中链接 json 100%的主要内容,如果未能解决你的问题,请参考以下文章

如何与 Web XML/JSON API 交互?

如何从 laravel 刀片中的 json 数据创建分页链接

如何访问 PHP 中的 JSON 元素,如数组对象?

如何使用 Codable 在 Swift 中使用动态文件名解析 JSON

如何从 php 获取数据表 jquery 插件的 json 数据

问大佬php中如何用 foreach解析json