아래와 같이 style값에 대해 문의드립니다.
<?php for ($i=0; $i<count($list); $i++) { if ($i==0) { $style_css3 = "li:first-of-type"; } else { $k=$i+1; $style_css3 = "li:nth-of-type(".$k.")"; }?>
$style_css3 값에 0일때를 제외하고 나머지 값이 2,3,4,5 이렇게 순서대로 들어가게 하려고 합니다.
위처럼 하면 원하는 대로 첫번째 값만 li:first-of-type 로 나오고 두번째 부터는 li:first-of-type(2), li:first-of-type(3) 이렇게 제대로 나오긴 합니다.
처음 제가 원했던 것은
$k=$i+1;
$style_css3 = "li:nth-of-type(".$k.")";
이런 형태가 아니라
$style_css3 = "li:nth-of-type(".$i+1.")";
이런 식의 구성을 생각했었습니다.
그런데 뜻대로 구현되지 않네요.
변수 값에 $i 다음 사칙연산을 사용할 때 위처럼 한줄로 표현하려면 어떻게 해야 하나요?
답변 2개 / 댓글 2개
for ($i=0; $i<count($list); $i++) $style_css3 = ($i == 0) ? "li:first-of-type" : "li:nth-of-type(".($i+1).")";
안녕하세요. 인아이디어입니다.
이걸 말씀하신건지 잘 모르겠네요 ''
위의 for문과 결과값은 같습니다 : )
답변에 대한 댓글 1개
$style_css3 = "li:nth-of-type(".$i+1.")";
$style_css3 = "li:nth-of-type(". intval($i+1) .")";
이런식으로 형변환을 해주셔야 되지 않을까 싶으네요
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
괄호한에 묶어야 연산을 할 수 있었군요..
php 수준이 너무 떨어지니 기초적인 것도 잘 모르네요..
감사합니다~