두 개의 PHP 배열이 있습니다. 하나는 그룹 이름을 포함하고 다른 하나는 임금 임금 값을 포함합니다.하나의 PHP 배열에 값이있는 경우 두 번째 배열에 값을 추가하십시오.
$group_wages_array = Array ([0] => 1 [1] => 4 [2] => 1 [3] => 3);
즉, 일정에 4 명의 직원이 있다는 의미입니다. 두 가지는 기 (4)에 제 1 군, 다른 할당 된 다음과 같이 제 2 어레이는 그룹 3
마지막된다
$tot_wages_array = Array ([0] => 500 [1] => 44 [2] => 80 [3] => 11.25);
이 각각 직원의 임금의 샘플 배열이다. 두 배열은 데이터베이스에서 정보를 가져 오는 동안 값이 mysql while 루프에 추가 될 때 순서대로 생성됩니다.
은 나중에 선 아래로, 나는 키가 그룹 번호는 하나 개의 배열을 얻을 수있는 두 개의 배열을 결합 값은 해당 그룹의 총 임금이다 :
$combined_group_wages = array_combine($group_wages_array, $tot_wages_array);
이 같이 작동 하나 이상의 직원이 같은 그룹에 배정 된 경우를 제외하고는 매력. 루프는 각 직원의 정보를 통해 루프로하면서 이러한 배열은 MySQL의에 내장되어 있습니다 : 그냥 배열에 데이터를 밀어하는 대신
array_push($tot_wages_array, $totemp_wages_sch); // Add their wage to the array
array_push($group_wages_array, $emp_data['group_id']); // Add their group to the array
, 나는 '나는 영어를 알고 있지만 나는 돈 ...이 작업을 수행 할 필요가
$ group_wages_array에 $ emp_data [ 'group_id'] 값이 존재하면이 배열에 아무 것도 추가하지 않고 키를 가져옵니다. $ tot_wages_sch를 $ tot_wages_array에 추가하십시오. 여기서 key = group_wages_array 키 나는 SQL 쿼리와 비슷하게 들리지만 키와 값을 나중에 페이지에서 조합 할 수 있도록 유지해야합니다. 나는이 잘 작동하도록 할 수있는 경우, 예에 표시된 배열은 다음과 같습니다
$group_wages_array = Array ([0] => 1 [1] => 4 [2] => 3);
$tot_wages_array = Array ([0] => 580 [1] => 44 [2] => 11.25);
$combined_group_wages = array_combine($group_wages_array, $tot_wages_array);
$combined_group_wages = Array ([1] => 580 [4] => 44 [3] => 11.25);
... 내가 PHP를 사용하여이 작업을 할 수있어. 어떤 아이디어?
다음 두 가지 답변을 조합하여 해결책을 찾았습니다. 영어는 PHP로 변환입니다 여기에 내가 많은 도움이 될 코드의 전체를 볼 수있는 경우
if(in_array($emp_data['group_id'], $group_wages_array)){
$key = key($group_wages_array);
$tot_wages_array[$key] += $totemp_wages_sch;
} else {
array_push($group_wages_array, $emp_data['group_id']);
array_push($tot_wages_array, $totemp_wages_sch);
}
마지막 예제 코드 블록에서 원하는'$ combined_group_wages' 배열을 보여줍니다. – webbiedave
새로운 결합 된 배열을 표시하도록 업데이트되었습니다. – Oseer
이 배열 추상화가 아닌 객체를 다루는 것이 좋습니다. 당신의 코드를 살펴보고 도움을 얻으 려하지만 솔직히 말해서 나는 당신에게 어떤 제안을 할 것입니다. –