테스트 사이트 - 개발 중인 베타 버전입니다

배열 잘되는데요,,,,그런데 채택완료

머시기거시기 5년 전 조회 1,454

왕계란님 등 여러분이 알려주셔서 잘됩니다.

 

echo implode("|", $sum); ?>

 

원래 wr_1에

 

22|14|44|26|0|2|6|87|85|0||3|

 

이런식으로 들어가 있습니다,

 

0까지의 합산값

다음 0까지의 합산값을

 

22|14|44|26|0이 있던 요자리|2|6|87|85|0이 있던 요자리에||3|

 

이런식으로 위의 배열 $sum값을 넣고 싶습니다.

$result 및 $sum으로 합산값이 나왔는데

 

원래 있던 0의 자리에

$sum을 넣고 싶습니다.

 

echo implode("|", $sum);

이걸 어떻게 해야할지,,ㅋ

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

답변 1개

채택된 답변
+20 포인트
5년 전

$str = $write[wr_1]; <--이런 코드는 불필요

 

//$write['wr_1'] = "22|14|44|26|0|2|6|87|85|0||3|"; $arr = explode("|", $write['wr_1']);

$sum=0; for($i = 0; $i < count($arr); $i++) {

 if($arr[$i] =='') continue;  if($arr[$i] == 0){ $arr[$i] = $sum; $sum=0;}  else $sum+= $arr[$i]; }

 $wr_1 = implode('|', $arr);

?>

 

 

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

답변에 대한 댓글 3개

머시기거시기
5년 전
감사합니다~
간결하고 좋아요,,
시간나실때 다른 보수의뢰 좀,,ㅎ
머시기거시기
5년 전
원하는대로 잘 들어오는데요,,


22|14|44|26|여기|2|6|87|85|여기||3|
잘들어오는데요 나머지 값으 공백으로 할 수 없을까요?
균이
5년 전
질문을 좀 명확하게 하셔야 한번에 답변을 얻을텐데요
나머지를 공백으로 해서 저장해버리면 기존에 들어잇던 값들을 알수가 없게 되는데
상관이 없다는 것인가요?
특히나 마지막 3은 아무 곳에도 쓰이지않고 버려지잖습니까?

어쨌던 아래처럼 수정하면 됩니다
else $sum+= $arr[$i]; ---> 수정
else{ $sum+= $arr[$i]; $arr[$i]='';}

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

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

로그인