배열 질문입니다ㅠ 채택완료

3년 전 조회 3,922

Copy
$num = array(

    array('first'=>    '1',    'second'=>    '2',    'third'=>    '3',    'fourth'=>    '4'),
    array('first'=>    '5',    'second'=>    '4',    'third'=>    '2',    'fourth'=>    '5'),
    array('first'=>    '1',    'second'=>    '2',    'third'=>    '3',    'fourth'=>    '5'),
    array('first'=>    '1',    'second'=>    '3',    'third'=>    '2',    'fourth'=>    '4'),

 

위와 같은 배열일때

1: 갯수

2: 갯수

3: 갯수

4: 갯수

5: 갯수

 

1~5까지 있는 갯수를 다시 제일 많은 값부터 정렬을 하고 싶습니다..어뜨케 해야할까요??

 

질문내용이 부족하면 댓글로 달아놓겠습니다..ㅠ

답변 3개

채택된 답변
+20 포인트

Copy
$num = array(
    array('first'=>    '1',    'second'=>    '2',    'third'=>    '3',    'fourth'=>    '4'),
    array('first'=>    '5',    'second'=>    '4',    'third'=>    '2',    'fourth'=>    '5'),
    array('first'=>    '1',    'second'=>    '2',    'third'=>    '3',    'fourth'=>    '5'),
    array('first'=>    '1',    'second'=>    '3',    'third'=>    '2',    'fourth'=>    '4')
    );
$rst = $sort = [];
foreach ($num as $val) $rst = array_merge($rst, array_values($val));
$sort = array_count_values($rst);
arsort($sort);
print_r($sort);

 

결과:


Array
(
    [2] => 4
    [1] => 3
    [3] => 3
    [4] => 3
    [5] => 3
)
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

https://www.php.net/manual/en/function.array-count-values.php
array_count_values

댓글을 작성하려면 로그인이 필요합니다.

http://jun.hansung.ac.kr/SWP/PHP/PHP%20Sorting%20Arrays.html

 

배열 정렬기능을 사용하시면 되지 않을까요?

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

갯수가 각 배열의 first~fourth까지의 합인가요?

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고