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

게시판에 이미지를 등록하면 foreach로 보여 지는데... 특정 이미지만 볼 수 있는 방법이 있나요? 채택완료

로마신전 4년 전 조회 2,447

view.skin.php에서

 

게시판에 이미지를 등록하면 foreach로 보여 지는데... 특정 이미지만 볼 수 있는 방법이 있나요?

 

예를 들어 1번째 이미지,

 

3, 4 번째 이미지,

 

4, 7,번재 이미지 이런식으로...

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

답변 2개

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

</p>

<p>            // 기존 소스</p>

<p>            foreach($view['file'] as $view_file) {

                echo get_file_thumbnail($view_file);

            }</p>

<p> </p>

<p>            // ▼</p>

<p>            // foreach() 내에 조건을 추가할 수 있으나, 직접 원하는 부분만 출력하는 것이 빠릅니다.</p>

<p>            echo get_file_thumbnail($view['file'][0]); // 1번 이미지 출력</p>

<p>            echo get_file_thumbnail($view['file'][2]); // 3번 이미지 출력</p>

<p>            echo get_file_thumbnail($view['file'][3]); // 4번 이미지 출력</p>

<p>            echo get_file_thumbnail($view['file'][6]); // 7번 이미지 출력</p>

<p> </p>

<p>            // ★ foreach() 반복문 이용하는 방법도 참고로 남깁니다.</p>

<p>            // $view['file']에는 크기 ['count']도 포함되어 있으니 아래처럼 해당 요소 제거</p>

<p>            $files = $view['file']; // 기존 유지, 따로 복사</p>

<p>            if ( isset($files['count']) ) unset($files['count']); // count 배열 제거</p>

<p>            foreach($files as $i=>$view_file) { // 키 추가</p>

<p> </p>

<p>                // ★ 원하는 조건만 사용해 출력</p>

<p> </p>

<p>                if ( $i==0 ) echo get_file_thumbnail($view_file); // 1번째 이미지 [배열은 0부터 시작]</p>

<p> </p>

<p>                if ( in_array($i, [2, 3]) ) echo get_file_thumbnail($view_file); // 3번째, 4번째 이미지</p>

<p> </p>

<p>                if ( in_array($i, [4-1, 7-1]) ) echo get_file_thumbnail($view_file); // 4번째, 7번째 이미지</p>

<p> </p>

<p>            }</p>

<p> </p>

<p>            // ★ 또는 아래처럼 지정 조건 아니면 skip 처리

            foreach($files as $i=>$view_file) { // 키 추가</p>

<p>                if ( !in_array($i, [2, 3]) ) continue;</p>

<p>                echo get_file_thumbnail($view_file);</p>

<p>            }</p>

<p>

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

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

해당 배열에 표기여부를 확인하는 변수를 추가하시거나

 

별도의 변수에 값을 넣어서 조건문을 달아주시면 됩니다

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

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

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

로그인