Angular がデータを簡単にトラバースできるように、mysql 応答をオブジェクトの配列にフォーマットしようとしています。
mysqlの結果:
[{
"FIAccountsID": "99",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "1"
},
{
"FIAccountsID": "99",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "2"
},
{
"FIAccountsID": "100",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "1"
},
{
"FIAccountsID": "100",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "2"
},
{
"FIAccountsID": "101",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "1"
},
{
"FIAccountsID": "101",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "2"
},
{
"FIAccountsID": "102",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "1"
},
{
"FIAccountsID": "102",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "2"
},
{
"FIAccountsID": "103",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "1"
},
{
"FIAccountsID": "103",
"AccountName": "",
"AccountCustomName": "Brothers",
"AccountNumber": "99-123123123",
"AccountTypeName": "IRA",
"FinancialInstName": "Testes",
"FinancialInstID": "9",
"UserID": "1",
"ofxStatusCode": "500",
"UserAccountID": "09128-vc-12",
"FirstName": "Someones",
"LastName": "Name",
"Status": "2"
}......
ここにPHPがあります:
while($row = mysqli_fetch_assoc($result))
{
$uid = $row['UserID'];
$name = $row['FirstName'].' '.$row['LastName'];
$fiid = $row['FinancialInstID'];
$fi = $row['FinancialInstName'];
$acctID = $row['FIAccountsID'];
$rows[$uid]['name'] = $name;
$rows[$uid]['uid'] = $uid;
$rows[$uid]['fi'][$fiid]['name'] = $fi;
$rows[$uid]['fi'][$fiid]['acct'][$acctID]['name'] = $row['AccountCustomName'];
}
print json_encode($rows);
これは私が得るものです:
{
"1": {
"name": "Some Name",
"uid": "1",
"fi": {
"9": {
"name": "Testes",
"accts": {
"99": {
"name": "name 1"
},
"100": {
"name": "name 2"
},
"103": {
"name": "name 3"
}
}
}
}
},
"2": {
"name": "Another Name",
"uid": "2",
"fi": {
"7": {
"name": "Trevor's Brokerage House",
"accts": {
"1": {
"name": "Sally's 401k Account"
},
"2": {
"name": "retirement"
},
"3": {
"name": "Some other account"
..........
望ましい結果:
[
{
"users": [
{
"name": "Some Name",
"uid": "1",
"fi": [
{
"name": "Testes",
"acct": [
{
"name": "name 1"
},
{
"name": "name 2"
},
{
"name": "name 3"
}
]
}
]
},
{
"name": "Another Name",
"uid": "2",
"fi": [
{
"name": "Trevor's Brokerage House",
"acct": [
{
"name": "Sally's 401k Account"
},
{
"name": "retirement"
},
{
"name": "Some other account"
..........
ネストされた配列の前に一意のキーを付けずにデータ構造を持つ方法を知りたい