<?php $params = array( 'apiKey' => 'API key', 'projectId[]' => 'project id', 'statusId' => array(1 => 1, 2 => 2, 3 => 3, 4 => 4), 'sort' => 'updated', 'count' => 100, ); $url = 'https://{$hoge}.backlog.com/api/v2/issues?'.http_build_query($params, '','&'); $headers = array('Content-Type:application/x-www-form-urlencoded'); $context = array( 'http' => array( 'method' => 'GET', 'header' => $headers, 'ignore_errors' => true, ) ); $response = file_get_contents($url, false, stream_context_create($context)); $json = mb_convert_encoding($response, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN'); $json = json_decode($json, true); echo "<pre>"; var_dump($json); echo "</pre>"; ?>
複数projectなら、こんな感じで書く。
'projectId' => array(42107 => 42107, 42116 => 42116),
$jsonは連想配列で返ってくる。
foreachでいってみよう!
foreach($json as $value){ echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".$value["created"]." ".$value["dueDate"]." " .$value["updated"]." ".$value["createdUser"]["name"]."<br>"; }
うお。
tableで表示したい。その前に、日付フォーマット。date(‘m/d’, strtotime($value[“created”]))とする。
foreach($json as $value){ echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".date('m/d', strtotime($value["created"]))." ".date('m/d', strtotime($value["dueDate"]))." " .date('m/d', strtotime($value["updated"]))." ".$value["createdUser"]["name"]."<br>"; }
うお、nullだと01/01になる。。冗長だが。。
foreach($json as $value){ if(!is_null($value["dueDate"])){ echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".date('m/d', strtotime($value["created"]))." ".date('m/d', strtotime($value["dueDate"]))." " .date('m/d', strtotime($value["updated"]))." ".$value["createdUser"]["name"]."<br>"; } else { echo $value["issueType"]["name"] ." ".$value["issueKey"]." ". $value["summary"]." " .$value["assignee"]["name"]. " ".$value["status"]["name"]." ".$value["priority"]["name"]."".date('m/d', strtotime($value["created"]))." "." "." " .date('m/d', strtotime($value["updated"]))." ".$value["createdUser"]["name"]."<br>"; } }