Php 如何根据另一个多维数组数据结果搜索多维数组数据
我有两个多维数组,从数据库中的两个不同表中获取数据。其中一个有3个团队,另一个有团队下达的订单Php 如何根据另一个多维数组数据结果搜索多维数组数据,php,Php,我有两个多维数组,从数据库中的两个不同表中获取数据。其中一个有3个团队,另一个有团队下达的订单 $sql = "select id, supervizori, grupi, tipo_crt, operatori, data, status, nome, cognome, cel, codice_fiscale from kontrata"; $result = mysqli_query($dbCon, $sql); if(!$sql) { die("Error1
$sql = "select id, supervizori, grupi, tipo_crt, operatori, data, status, nome, cognome, cel, codice_fiscale from kontrata";
$result = mysqli_query($dbCon, $sql);
if(!$sql) {
die("Error1");
} //this query takes the orders from the kontrata table.
$sql_2 = "select * from grupi";
$result_2 = mysqli_query($dbCon, $sql_2);
if(!$sql_2) {
die("Error2");
} // this query take the teams from the grupi table.
while ($row = mysqli_fetch_assoc($result)) {
$kontratat[$row['id']]['supervizori'] = $row['supervizori'];
$kontratat[$row['id']]['grupi'] = $row['grupi'];
$kontratat[$row['id']]['tipo_crt'] = $row['tipo_crt'];
$kontratat[$row['id']]['operatori'] = $row['operatori'];
$kontratat[$row['id']]['data'] = $row['data'];
$kontratat[$row['id']]['status'] = $row['status'];
$kontratat[$row['id']]['nome'] = $row['nome'];
$kontratat[$row['id']]['cognome'] = $row['cognome'];
$kontratat[$row['id']]['cel'] = $row['cel'];
$kontratat[$row['id']]['codice_fiscale'] = row['codice_fiscale'];
} // In this loop i take the data according to the order table.
while ($row = mysqli_fetch_assoc($result_2)) {
$kontratat_2[$kontratat['id']]['grup_name'] = $row['grup_name'];
} // In this loop i take the teams.
在循环之后,我使用foreach将数据显示到一个表中,但是当我调用foreach来生成结果时,我得到了所有的订单(这是正常的),但我有100个订单
这三支球队都有。我想使用secont循环过滤每个团队的订单。简单地说,我希望使用第一次查询中的“ID”查看每个团队的所有订单,而不是将同一团队显示50次。谢谢:)
这应该可以完成以下工作:
$completeData = array();
foreach($orders as $order)
{
if(!array_key_exists($order['grupi'], $completeData))
{
$completeData[$order['grupi']] = array();
}
$completeData[$order['grupi']][] = $order;
}
根据你的需要调整它
$completeData = array();
foreach($orders as $order)
{
if(!array_key_exists($order['grupi'], $completeData))
{
$completeData[$order['grupi']] = array();
}
$completeData[$order['grupi']][] = $order;
}