Copy
$arr = array('1','2','3');
echo ($arr[4]);
index 4 = > 1 될려면 어떻게 하면되나요?
index 5 = > 2
3으로나눈 나머지값을 돌아온다??;
검색어라도 알려주심 감사하겠습니다.
답변 2개 / 댓글 5개
채택된 답변
+20 포인트
2018-05-03 (목) 17:09:15
본문글 대로라면 4가 입력되면 => $arr[0]번지 값 1을 출력하게 하시는 걸로 말씀하셨는데
그 코드는 다음과 같구요.
Copy
<?
$arr = array('1','2','3');
$input_num = 4; // 여기 입력되는 숫자 세팅
$input_num = abs($input_num);
if(($index = $input_num % count($arr) - 1) == -1)
$index = count($arr)-1;
echo $arr[$index];
?>
댓글데로라면
Copy
<?
$arr = array('1','2','3');
$input_num = 4; // 여기 입력되는 숫자 세팅
$input_num+=1;
$input_num = abs($input_num);
if(($index = $input_num % count($arr) - 1) == -1)
$index = count($arr)-1;
echo $arr[$index];
?>
답변에 대한 댓글 4개
rlawhd
2018-05-03 (목) 17:22:33
2018-05-03 (목) 17:27:11
님 논리데로라면 4가 입력됏을때 index[1] 번지를 가르키는게 맞습니다. 1번지가 두번째 배열이죠.
2018-05-03 (목) 16:55:12
의도가 먼지 모르겠습니다.
배열 길이가 0번지~2번 까지 있는데 한 대충 100번지까지 계속 반복적으로 넣고 싶은건가요????
아님 4가 입력이되면 0번지에 있는 1이라는 숫자를 가르키고 싶은건가요?????
답변에 대한 댓글 1개
rlawhd
2018-05-03 (목) 17:03:26
후자입니다.
arr[4] => 2 =arr[1] =>2
가르키게 하고 싶습니다.
arr[4] => 2 =arr[1] =>2
가르키게 하고 싶습니다.
답변을 작성하려면 로그인이 필요합니다.
$input_num % count($arr) - 0) 으로 고치긴했는데 제가 잘못 생각하는건가요?