2014-02-26 3 views
0

두 배열로 배열 할 수있는 데이터가 있습니다. 아래와 같이끝에서 중복 배열을 제거하십시오.

$array1 = array(30,17,12,6,89,23,45,45,45); 
$array2 = array(30,17,12,6,89,23,45,45,45,45); 

$array의 마지막 요소 $array2의 마지막 요소와 동일한 경우, I가 모두 동일하지만, 소자의 마지막에서 제거하고 싶다.

$array1 = array(30,17,12,6,89,23) 

을하지만 $array1 경우 마지막 요소는 $array2 유사하지 않은 경우 내가 $array1의 모든 요소를 ​​얻어야한다 : 따라서이 경우에 나는 $array1가되고 싶어요. 그것은

$array1 = array(30,17,12,6,89,23,45,45,45); 

누군가가 나에게 이것을 달성하는 방법에 대한 몇 가지 포인터를 줄 수 반환해야

$array1 = array(30,17,12,6,89,23,45,45,45); 
$array2 = array(30,17,12,6,89,23,45,45,45,47); 

즉?

답변

1
$array1 = array(30,17,12,6,89,23,45,45,45); 
$array2 = array(30,17,12,6,89,23,45,45,45,45); 
if(end($array1) == end($array2)) { 
    $number = end($array1); 
    while(end($array1) == $number) array_pop($array1); 
    while(end($array2) == $number) array_pop($array2); 
} 
var_dump($array1); 
+2

array_pop(); ? – Mazzy

+0

이런, 미안하지만 ... – J33nn

+0

이 루프는이 배열에 대해 3 번 실행됩니다. 배열이 커지면 매우 효율적이지 않을 수도 있습니다. –

관련 문제