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

define() 전역변수를 for문으로 여러개 불러오려면????? 채택완료

히햐 7개월 전 조회 2,666

define('test1', '테스트1번');

define('test2', '테스트2번');

define('test3', '테스트3번');

define('test4', '테스트4번');

 

 

이런식으로 전역변수를 정해놨을때

for문이나 반복문으로 불러올수는 없나요?

for($i=1; $i<=count($count); $i++) {

   echo test.$i;

}

이렇게 불러오니 그냥 test1 이라고만 불러와요ㅠㅠㅠ 

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

답변 2개

채택된 답변
+20 포인트
s
sinbi Expert
7개월 전

constant() 함수를 이용해 보세요.

</p>

<p>define('test1', '테스트1번');</p>

<p>define('test2', '테스트2번');</p>

<p>define('test3', '테스트3번');</p>

<p>define('test4', '테스트4번');</p>

<p>for($i=1; $i<=4; $i++) {</p>

<p>   echo constant('test'.$i);</p>

<p>}</p>

<p>

 

또는, 상수를 배열에 넣고 해당 배열을 호출하는 식으로 가능.

 

PS.

PHP에서는 기본적으로 상수명을 동적으로 호출하는 기능이 제공되지 않음. 즉, 상수명 자체를 반복문을 통해 직접 참조하는 방식은 constant() 없이 구현할 수 없음.

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

답변에 대한 댓글 1개

히햐
7개월 전
자세한 설명 너무 감사합니다!!!!!!!!!!

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

그누위즈
7개월 전

</p>

<p>define('test1', '테스트1번');

define('test2', '테스트2번');

define('test3', '테스트3번');

define('test4', '테스트4번');</p>

<p>$count = 4;</p>

<p>for ($i = 1; $i <= $count; $i++) {

    $const_name = 'test' . $i;

    echo constant($const_name) . "
";

}

 </p>

<p>

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

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

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

로그인