2026, 새로운 도약을 시작합니다.

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

Copy


$array = ['a', 'b', 'c', '', 'e'];

 

//$array의 값

Array (

 [0] => a

 [1] => b

 [2] => c

 [3] => 

 [4] => e

)

 

//2개씩 묶고싶어요

Array (

[0] =>  array(

  [0] => a,

  [1] => b

),

[1] =>  array(

  [0] => c,

  [1] => 

),

[2] =>  array(

  [0] => e,

)

)

사실 array_chunk 라는 함수를 쓰면되긴 하지만 쓰지 않고 할 때

어떻게 해야 할까요 ㅠㅠ

답변 3개

채택된 답변
+20 포인트

array_chunk() 함수를 사용하지 않고 직접 2개씩 묶고 싶다면 아래처럼 할당하면 됩니다.

Copy


$array = ['a', 'b', 'c', '', 'e'];

$size = 2; // 편의상 변수에 할당

$data = []; // 초기화

foreach ( $array as $k=>$v ) $data[floor($k/$size)][$k%$size] = $v;

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

답변에 대한 댓글 1개

한 수 배웠습니다.

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

그냥 잘라오면 안되나요?

$newarr[] = array_slice($array,0,2);
$newarr[] = array_slice($array,2,2);
$newarr[] = array_slice($array,4);

print_r($newarr);

==================

$newarr=[];
for($i=0; $i< count($array); $i+=2) $newarr[] = array_slice($array,$i,2);
print_r($newarr);

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

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

Copy


$array = array( 

             array('a','b'),

             array('c',''),

             array('e')

          );

와 같이 선언시에 할당도 가능합니다.

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

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

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

로그인
🐛 버그신고