나는 쿼리의 결과가 있습니다결과를 배열로 변경하는 방법은 무엇입니까?
array (
[0]=>array (
"id"=>"3"
"role_id"=> "62"
"user_id"=> "20"
"service_id"=> "1"
"field_id"=> "4"
"value"=> "asdfgh"
)
[1]=>array (
"id"=> "4"
"role_id"=> "62"
"user_id"=> "20"
"service_id"=> "2"
"field_id"=> "3"
"value"=> "qwerty"
)
[2]=>array (
"id"=> "5"
"role_id"=> "62"
"user_id"=> "20"
"service_id"=> "2"
"field_id"=> "4"
"value"=> "asdfgh"
)
[3]=>array (
"id"=> "6"
"role_id"=> "62"
"user_id"=> "20"
"service_id"=> "2"
"field_id"=> "16"
"value"=> "zxcvbn"
)
)
을 그리고이 같은이 데이터를 배치 할 :
$roles = array(
'services' => array(
[2] => array(// this [2] is service_id
'fields'=>array(
[0]=>array(
"id"=>"16", "value"=>"zxcvbn"
)
[1]=>array(
"id"=>"4", "value"=>"asdfgh"
)
[2]=>array(
"id"=>"3", "value"=>"qwerty"
)
)
[1] => array(// this [1] is service_id
'fields'=>array(
[0]=>array(
"id"=>"4", "value"=>"asdfgh"
)
)
)
)
)
결과는 다음 SERVICE_ID에 의해 ROLE_ID에 의해 처음으로 정렬됩니다.
각 행이 별도의 역할 인 테이블을 보여주고 싶습니다. 행에서 서비스별로 그룹화 된 필드를 표시하고 싶습니다.
어떻게 만드시겠습니까?
난 붙어 여기있어 :
이제$roles = array();
foreach($resultArray as $ra){
$roles[$ra['role_id']] = array(
...
)
}
내가 생각하고 ...
여기$temp_role = null;
$roles = array();
foreach($resultArray as $ra){
if($ra['role_id']!=$temp_role){
$temp_role = $ra['role_id']
... something like this, but is it a good idea?
당신의 예상 종료 배열에 그것을 얻기 위해 당신의 시도가 무엇입니까? – Jon