У меня есть массив data , где я храню результат запроса SQL, как показано ниже:
$stmt = sqlsrv_query($db,$sql);
$data = [];
while($row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC)) {
if(!empty($row)) { $data[] = $row; } }
, затем я хочу создать групповой ключ, который является объединением из указанных c ключей моего массива данных , как показано ниже:
foreach ($data as $d) {
$group_key = $d['id'].'_'.$d['Country'].'_'.$d['Order Numer'];
//rest of my code
}
это работает нормально, но я хочу выбирать ключи динамически, вместо того, чтобы настраивать идентификатор вручную, страну и номер заказа ... скажем, у меня есть массив $PostKeys = ["id","Country","Order Number"];
этот массив будет варьироваться в зависимости от значений, выбранных пользователем ...
То, что я сделал, это:
$PostKeys = ["id","Country","Order Number"];
foreach ($data as $d) {
foreach($PostKeys as $value)
{ $array_group_key[] = $d[$value] ; }
$group_key = implode("_",$array_group_key);
// rest of my code
}
Я должен получить тот же результат, но всегда есть несоответствие. Я не понял, где именно проблема. Любые предложения, пожалуйста? Большое спасибо.