2017-11-13 5 views
1

foreach 루프에서 같은 열에의 차이를 찾는 방법 이러한 차이를 발견하고 내가 좀 도와주십시오 동일한 열 의 차이를 찾으려면 다음 번호내가 foreach 루프에있는 모든 필드를 가지고 필드 이름을 각각 두 개의 열 <br> <a href="https://i.stack.imgur.com/9kDUu.png" rel="nofollow noreferrer">enter image description here</a></p> <p>위의 이미지 'tech_strt_km'의 차이입니다 타고을 오전

<?php 
foreach($pexpn as $row) { 
    echo $row->tech_strt_km; ?><br> 
} ?> 

어떤 방법을 인쇄하기위한 foreach 루프를 사용하고 다른 variyable 거기에 값을 저장하는 방법 122-22과 200-122의 차이! !

+0

테이블 구조와의 차이점을 표시하려면 필드 이름을 게시하십시오. –

답변

3

정상적으로 작동합니다. 다음 값을 얻기 위해 현재 키에 1을 더하고, 현재 값에서 빼기 위해이 차이를 나중에 사용하기 위해 배열 diff에 저장합니다.

$arr = array('22', '122', '200'); 
$diff = array(); 
foreach ($arr as $k => $v) { 
    if (!isset($arr[$k + 1])) { 
     // if we don't have a next item we are done 
     // break from foreach 
     break; 
    } 
    // abs only necessary if we expect negative differences and 
    // if we don't want that --- store differences in array 
    // for later usage 
    $diff[] = abs($arr[$k + 1] - $v); 
} 
print_r($diff); 
+1

배열이 완벽하게 작동합니다. + 1 –

+0

@alex 먼저 $ diff가 배열로 선언되고 마지막으로 계산 시간 $ diff []가 왜이 두 번 호출합니까? – Shambu

+0

@Shambu 어떤 이유로 든'$ arr'이 어떤 이유로 든 비어있는 경우'$ diff'에 접근하려고 시도하면 설정되지 않고 오류가 발생합니다. 일반적으로 모든 변수와 배열을 선언하는 것이 좋습니다. – Alex