2014-07-07 110 views
1

我使用PHP解析Json。这里是我的代码的一小部分PHP Json输出格式

$rootObj = array(
    'MainEvent' => $event_value['MainEvent'], 
    'OutcomeDateTime' => $formatteddate->format('Y-m-d H:i:s'),      
    'OutcomeDateTimeUTC' => gmdate('Y-m-d H:i:s', strtotime($event_value['OutcomeDateTime'])) 
         ); 

    foreach($event_value['Competitors']['Competitors'] as $compKey => $compVal) { 
    $countTeam++; 
    $teamName = array_key_exists('Team',$compVal) ? $compVal['Team'] : $compVal['Name']; 
    $win = $compVal['Win']; 

    //Insert to root object 
    $rootObj["Team".$countTeam] = $teamName; 
    $rootObj["Win".$countTeam] = $win; 

我的输出

"MainEvent": "West Perth v Swan Districts", 
    "OutcomeDateTime": "2014-07-05 16:05:00", 
    "OutcomeDateTimeUTC": "2014-07-05 06:05:00", 

     "Team1": "West Perth", 
     "Win1": "1.57", 

     "Team2": "Swan Districts", 
     "Win2": "2.35" 


}, 
{ 
    "MainEvent": "East Fremantle v Perth", 
    "OutcomeDateTime": "2014-07-05 16:05:00", 
    "OutcomeDateTimeUTC": "2014-07-05 06:05:00", 

     "Team1": "East Fremantle", 
     "Win1": "1.22", 

     "Team2": "Perth", 
     "Win2": "4.15" 
}, 
{ 
    "MainEvent": "East Perth v Peel Thunder", 
    "OutcomeDateTime": "2014-07-05 16:05:00", 
    "OutcomeDateTimeUTC": "2014-07-05 06:05:00", 

     "Team1": "East Perth", 
     "Win1": "1.12", 

     "Team2": "Peel Thunder", 
     "Win2": "6.00" 
} 

但不是TEAM1,赢1,2队,WIN2我想A队,赢得这样的。我只想使用字母A,B而不是1,2。

"MainEvent": "West Perth v Swan Districts", 
    "OutcomeDateTime": "2014-07-05 16:05:00", 
    "OutcomeDateTimeUTC": "2014-07-05 06:05:00", 

     "TeamA": "West Perth", 
     "WinA": "1.57", 

     "TeamB": "Swan Districts", 
     "WinB": "2.35" 


}, 
{ 
    "MainEvent": "East Fremantle v Perth", 
    "OutcomeDateTime": "2014-07-05 16:05:00", 
    "OutcomeDateTimeUTC": "2014-07-05 06:05:00", 

     "TeamA": "East Fremantle", 
     "WinA": "1.22", 

     "TeamB": "Perth", 
     "WinB": "4.15" 
}, 
{ 
    "MainEvent": "East Perth v Peel Thunder", 
    "OutcomeDateTime": "2014-07-05 16:05:00", 
    "OutcomeDateTimeUTC": "2014-07-05 06:05:00", 

     "TeamA": "East Perth", 
     "WinA": "1.12", 

     "TeamB": "Peel Thunder", 
     "WinB": "6.00" 
}  

任何人都可以告诉我我在找什么?

+0

那么做一个26数组对象,并用值的索引来替换。但我不能分类为什么你想要这个设施? –

回答

1

你进入for循环之前,初始化$countTeamA

$countTeam = "A"; 

和移动$countTeam++;到的结束for循环。

+0

其实我是TeamB,TeamC不是TeamA,TeamB。因为计数器是++,因此它正在打印B,C。在整数中是否有任何类似的0,以便它可以打印1,2 – user3754380

+0

@ user3754380哦,您应该将'$ countTeam ++;'移动到循环的最后一行 – meda