0
要開始了,這裏是JSON響應,我一直在努力:簡化解析JSON響應
{ "status": "ok",
"permalinks": [
"http:\/\/localhost\/blog\/2012\/06\/",
"http:\/\/localhost\/blog\/2012\/04\/",
"http:\/\/localhost\/blog\/2012\/03\/",
"http:\/\/localhost\/blog\/2011\/10\/"
],
"tree": {
"2012": {
"06": "221",
"04": "2",
"03": "3"
},
"2011": {
"10": "3"
}
}
}
PHP被用來格式化爲一個HTML UL一個DIV中:
function DisplayResponse(){
$baseref = 'http://localhost/' ;
$url = $baseref . 'api/get_date_index';
$r = file_get_contents($url) ;
if($r !== false){
$r = json_decode($r,true);
$t = $r['tree'] ;
echo '<div class="sidebar">' ;
echo '<h3>Response</h3>' ;
echo '<ul class="sidebar-list">' ;
for ($y = 0 ; $y <= 2 ; $y++){
if ($y == 0){
for ($m = 12 ; $m >= 0 ; $m--) {
$d = mktime (0, 0, 0, $m, 1, Date("Y")) ;
$du = Date("Y", $d) ;
$dm = Date("M", $d) ;
if ($m < 11){
$mm = sprintf("%02d",$m) ;
if ($t[$du][$mm] != NULL){
echo '<li><a href="' . $baseref . 'blog/' . $du . '/' . $mm
. '/">' . $dm . ', ' . $du . '</a></li>' ;
}
} else {
if ($t[$du][$m] != NULL){
echo '<li><a href="' . $baseref . 'blog/' . $du . '/' . $mm
. '/">' . $dm . ', ' . $du . '</a></li>' ;
}
}
}
} else {
for ($m = 12 ; $m >= 0 ; $m--) {
$d = mktime (0, 0, 0, $m, 1, (Date("Y") - $y)) ;
$du = Date("Y", $d);
$dm = Date("M", $d) ;
if ($m < 11){
$mm = sprintf("%02d",$m) ;
if ($t[$du][$mm] != NULL){
echo '<li><a href="' . $baseref . 'blog/' . $du . '/' . $mm
. '/">' . $dm . ', ' . $du . '</a></li>' ;
}
} else {
if ($t[$du][$m] != NULL){
echo '<li><a href="' . $baseref . 'blog/' . $du . '/' . $mm
. '/">' . $dm . ', ' . $du . '</a></li>' ;
}
}
}
}
}
echo '</ul></div><div class="sidebar-bottom"></div>' ;
}
}
輸出是具有奇妙顯示在頁面的部分下降的月份和年份行項目的期望的結果,但我怎麼收拾這個代碼,以便精美的顯示 資源?
使用函數返回類似的數據,在if語句中有很多重複的代碼。 – Kishore
有沒有問題,或者你想讓我們做你的工作? –
這屬於http://codereview.stackexchange.com –