我一直在尝试如何拆分数组,并为页面上的每个单独标题添加不同的标题,为它显示的每个不同内容添加不同的名称。然而,我能做的最多的事情就是在数字和单词之间加一个逗号。
我想添加selling"1st variable price"second variable"
等,但我不知道该怎么做,只能把这堆看起来很困惑的字母变成:
用户名和注释01001000013972583957ecC任意金额-w378-v西部
除了这个:
0100100001397258395,7ec,CC,任何数量-w378-v west
此外,这就是它在JSON形式中的样子:
{"selling":"0","quantity":"100","price":"10000","date":"1397258395","rs_name":"7ec","contact":"CC","notes":"any amount-w378- v west"}
我只是希望那里的所有信息都能这样显示,但我不太确定如何添加JSON数据中的标题。我也无法访问外部网站来更改任何内容。
一个小背景:我试图实现的是从外部网站在我的网站上查找游戏的价格。我试着用iframe
,但很糟糕;我宁愿手动显示它,也不愿从我的网站上显示他们的网站——他们的风格和我的风格非常冲突。
$json = file_get_contents('http://forums.zybez.net/runescape-2007-prices/api/rune+axe');
$obj = json_decode($json,true);
$blah1 = implode( $obj[0]["offers"][1]);
print_r($blah1);
如果你知道它在哪里,你应该能够抓住它并展示出来?
您可以使用故障保护来检查它是否与is_array()
和isset()
函数一起存在——请参阅php.net文档。
你的print_r
应该给你很好的有效信息——之前试着把它包装在<pre></pre>
标签周围,以获得更好的可读性或查看源代码——这会更容易!
<pre><?php print_r($obj) ?></pre>
这应该是你的起点,从这里开始,你要么拿走你的第一件物品,要么用循环浏览所有物品
foreach ($obj as $o) { //should be $objects, not $obj
//do whatever with $o, like echo $o['price']
}
每个offers
行都是一个table
,每个字段由行分隔:
$item = json_decode(file_get_contents('http://forums.zybez.net/runescape-2007-prices/api/rune+axe'));
while ($offer = array_shift($item[0]->offers)) {
echo "<table>" . PHP_EOL;
foreach ($offer as $field => $value) {
echo "<tr><th>$field</th><td>$value</td></tr>" . PHP_EOL;
}
echo "</table>" . PHP_EOL;
}
http://codepad.org/C3PQJHqL
HTML表格:
http://jsfiddle.net/G5QqZ/