私は何らかの並べ替えの多次元配列が必要だと思った。私はちょうど理解しやすい形式でそれを取得する方法を知りません。基本的に、特定の公園に行くための請求書がたくさんあります。私が望む最終結果は、1つの公園に複数の請求書を表示している公園なので、簡単にループすることができます。 I変数を取得するために、複数のSQL質問があるが、私はこれにそれを降りて:これは私の出力であるすべての終わりにPHP - 1つの値と複数の値をペアにする最も良い方法は?
$sql = "SELECT * FROM INVOICE WHERE ID=$ids[$i]";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
//invoice variables go here
//row is invoices
$invoiceapplication = $row['APPLICATION'];
$invoiceid = $row['ID'];
$invoicedate = $row['DATE'];
$late = $row['LATE'];
$amountowed = '';
$amountowed = $row['AMOUNTOWED'];
$originalamountowed = $row['AMOUNTOWED'];
//grabbing application park id to get all the parks.
$sqlapplication = "SELECT * FROM APPLICATION WHERE ID=$invoiceapplication";
$resultapplication = $conn->query($sqlapplication);
if($resultapplication->num_rows > 0){
$rowapplication = $resultapplication->fetch_assoc();
//rowapplication is applications
//application variables here
$applicationparkid = $rowapplication['MOBILEPARK'];
//end app variables.
}
//finished grabbing application park id to get all the parks.
echo $invoiceid.' is park '.$applicationparkid.'<br>';
if(in_array($applicationparkid,$allparkarray)){
//if already contained in the allparkarray
} else {
array_push($allparkarray,$applicationparkid);
}
}
$i++;
}
:理想的には
901 is park 38
1362 is park 38
1595 is park 38
1825 is park 38
2093 is park 38
4766 is park 38
17018 is park 61
17011 is park 66
17015 is park 66
17014 is park 66
17013 is park 66
17012 is park 66
...私が持っていると思います出力として、このような多次元配列:
38 => (901,1362,1595,1825,2093,4766)
61 => (17018)
66 => (17011,17015,17014,17013,17012)
それは突然の異なる数の間で現れので、もし、その出力における「秩序の外」であると請求書には全く可能です...覚えておいてください... I基本的に 簡単な0,1,2,3システムに依存してそれをペアにすることはできません。
これを行う簡単な方法があると確信しています。私の人生のためにはそれを理解できません。
いくつかの 'concat'関数とともに' sql group by'を使うことができます。 https://stackoverflow.com/questions/149772/how-to-use-group-by-to-concatenate-strings-in-mysql – Keloo
複数の異なるテーブルにある場合でも、私はINVOICEからテーブルAPPLICATIONへのアソシエーションを作る必要があります。これはPARKテーブルにリンクします。 – sblumberg
[Little Bobby Tables](http://bobby-tables.com/)がこのコードを承認しています。 – bishop