2016-07-22 1 views
0

배열 작동 방식에 문제가 있습니다. PHP array_intersect 출력

$a = array("24","33","12"); 
$b = array("24","12"); 

$c = array_intersect($a,$b); 

echo json_encode($c); 

// {"0":"24","2":"12"} 

나는 출력은 다음과 같이 될 것으로 기대 :

// ["24","12"] 

내가 어떻게 그 출력을 달성 할 수 있습니까?

+0

내 해결책을 시도해보십시오 에코처럼로 json_encode으로 – user1234

+0

@mamta '내 대답을보십시오'또는 '내 해결책을 시도하십시오'는 좋은 설명이 아닙니다. 의견은 세부 사항을 묻거나 개선 제안을하기위한 것입니다. ** ** 당신의 대답에주의를 요구하지 않음 –

답변

1
echo json_encode(array_values($c)); 

output 

["24","12"] 
+0

감사합니다. – Jefsama

1

는 array_intersect는

array(3) { 
    [0]=> int(2) 
    [1]=> int(4) 
    [2]=> int(6) 
} 

array(3) { 
    [1]=> int(2) 
    [3]=> int(4) 
    [5]=> int(6) 
} 

을 얻을 것입니다 배열

<?php 

$array1 = array(2, 4, 6, 8, 10, 12); 
$array2 = array(1, 2, 3, 4, 5, 6); 

var_dump(array_intersect($array1, $array2)); 
var_dump(array_intersect($array2, $array1)); 

?> 

의 교차점을 계산합니다. json_encode은 value의 JSON 표현을 포함하는 문자열을 반환합니다. 예를 들어

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 

echo json_encode($arr); 
?> 

출력됩니다

{"a":1,"b":2,"c":3,"d":4,"e":5} 

mamta 당신이 배열의 모든 값을 반환 array_values를 사용할 수있는 대답 이 json_encode(array_values($c))

+0

주목! 정보 주셔서 감사합니다. – Jefsama