x쵸딩의 주문내역에서

x쵸딩의 주문내역에서

QA

x쵸딩의 주문내역에서

답변 3

본문

옵션에 따른 이미지를 불러오는데요,,,

이미지박스에 이미지주소가 1개씩 나와야 하는데

배열전부가 나옵니다.

 

3667102531_1593128097.2854.png

 

 

배열의 1개씩 나오려면 어떻게 해야 할까요?

 

코드는 이렇습니다.

 

<?
$result = sql_query("SELECT it_img1 FROM g5_shop_item WHERE it_id = '$opt[it_id]' ");
 for($i=0; $row=sql_fetch_array($result); $i++) {
?>
<ul class="gallery">
<div style="width: 70px;
    padding: 5px;
    text-align: center;
    border: 1px solid #6a6afa;margin-bottom:3px">

 

<?php echo $row[it_img1];?>


</div>
</ul>

<? } ?>

이 질문에 댓글 쓰기 :

답변 3


// io_id에서 숫자값을 구하는 방법은 다양합니다. 그 중 정규식으로 구하는 방법 남깁니다.
preg_match('/^\d+/', $row['io_id'], $match);
echo explode('|', $row['it_img1'])[$match[0]-1];
 
// explode() 설명 및 예제를 읽어봤다면...
$t = explode('▲', $row['io_id']); // 예) 값 가운데, 구분하는 문자로 분리. $t[0]='3번', $t[1]='3'
echo explode('|', $row['it_img1'])[$t[1]-1]; // 이미지 구분 문자로 분리 후, 위에서 구한 숫자값으로 접근.

출력된 결과물을 보니 '|'으로 구분된 문자열 값인데,

아래처럼 explode() 함수를 이용해 간단하게 첫 값만 출력할 수 있습니다.


<?=explode('|', $row['it_img1'])[0]?> // PHP v5.4 이상
// PHP v5.4 미만은 아래처럼
<?=reset(explode('|', $row['it_img1']))?>

 

+ explode()

- https://www.php.net/manual/en/function.explode.php

- http://docs.php.net/manual/kr/function.explode.php

 

+ reset()

- https://www.php.net/manual/en/function.reset.php

- http://docs.php.net/manual/kr/function.reset.php

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 1,178
© SIRSOFT
현재 페이지 제일 처음으로