inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

워드프레스 제대로 개발하기 - 어드민 편

카카오 API 앱 만들기

if 문 구조 관련

180

vusvus77

작성한 질문수 4

0

if 도 <?php로 감싸고 else도 <?php로 감싸는 이유가 무엇인가요?
if 통째로 감싸면 작동이 안되는건가요?

기본적인 질문이라 죄송합니다. 검색해봐도 안나와서..

wordpress php

답변 1

1

워드프레스 개발

안녕하세요 :) 기본적인 질문이라서 죄송하실 필요는 없어요~ 오히려 이런 것들이 검색해서도 잘 나오지 않으니까요. 

제가 영상에서 처음엔 echo를 이용해서 html을 출력하려고 하다가 html이 좀 복잡해진다고 느끼니까 PHP 태그를 닫고 html을 쓴 것을 보셨을 거예요. 즉, 필요에 따라 PHP 태그를 닫았다가 열기도 한다는 것을 짐작하실 수 있습니다.

예시를 한 번 보여 드릴 게요. 아래처럼 간단한 if문인 경우에는 그냥 PHP 태그를 닫지 않고 쓰는 편이 편할 것입니다.

<?php
if ($age > 18) {
    echo '성인입니다';
} else {
    echo '미성년자입니다.';
}

그런데 꽤 복잡한 html을 출력해야 한다고 해 봅시다. echo 만 이용하는 경우에는 좀 복잡해져요.

<?php
if ($is_success) {
    echo '<h1>결제 신청 성공</h1>';
    echo '<p class="description">아래와 같이 입금해 주시면 됩니다.</p>';
    echo '<ul>';
    echo '<li>입금 기한: 2020년 8월 1일</li>';
    echo '<li>금액: 50,000원</li>';
    echo '<li>은행: 국민은행</li>';
    echo '<li>계좌번호: 0000-00-000000-000</li>';
    echo '</ul>';
} else {
    echo '<h1>결제 신청 실패</h1>';
    echo '<p class="description">뭔가 오류가 발생했습니다. 아래 메시지를 웹사이트 관리자에게 알려 주고 문의해 주세요.</p>';
    echo '<ul>';
    echo "<li>에러: {$error_code}</li>";
    echo "<li>{$error_message}</li>";
    echo '<li>문의 이메일: <a href="mailto:support@example.com">support@example.com</a></li>';
    echo '<li>문의 전화: <a href="tel:02-0000-0000">02-0000-0000</a></li>';
    echo '</ul>';
}

이렇게 쓰는 경우 에디터의 html 자동완성 기능이나 컬러링이 제대로 작동하지 않게 되는 경우도 많고, 타자를 치기도 힘들어집니다. 그래서 그냥 PHP 태그를 닫고 작성을 하는 것이죠. PHP 태그를 닫고 작성을 하면 echo를 하는 것과 같은 효과를 내게 됩니다.

<?php
if ($is_success) { ?>
    <h1>결제 신청 성공</h1>
    <p class="description">아래와 같이 입금해 주시면 됩니다.</p>
    <ul>
        <li>입금 기한: 2020년 8월 1일</li>
        <li>금액: 50,000원</li>
        <li>은행: 국민은행</li>
        <li>계좌번호: 0000-00-000000-000</li>
    </ul>
<?php } else { ?>
    <h1>결제 신청 실패</h1>
    <p class="description">뭔가 오류가 발생했습니다. 아래 메시지를 웹사이트 관리자에게 알려 주고 문의해 주세요.</p>
    <ul>
        <li>에러: <?= $error_code ?></li>
        <li><?= $error_message ?></li>
        <li>문의 이메일: <a href="mailto:support@example.com">support@example.com</a></li>
        <li>문의 전화: <a href="tel:02-0000-0000">02-0000-0000</a></li>
    </ul>
<?php }

이렇게 if문 안에 들어가는 내용에 따라 개발자가 판단해서 PHP 태그를 열거나 닫거나 하는 것입니다.

혹시 해소되지 않은 의문이 있다면 추가로 질문해 주세요.

감사합니다.

POST http://localhost/wordpress/wp-admin/admin-ajax.php 400 (Bad Request)

0

357

1

phpstorm에서 LIve server 기능을 사용하는 방법이 궁금합니다.

0

491

2

클랙식 테마를 운영 중 블럭 테마로 개편할 때

0

372

2

미디어에서 이미지 추가시 시간이 좀 느려서...

0

414

2

wp_editor ($editor_name) 관련

0

397

1

action-test.php 변경관련

0

484

1

APMsetup을 활용

0

436

1

미디어 라이브러리 작동안함문제

0

851

2

목차용 에디터 만들기 강좌에서

0

348

1

고유주소 설정을 바꾸면 글이 안 불러와져요.

0

416

1

JetBrains에서

0

440

3

5:30초 부분 결과값이 bool(false)로 나오는 문제

0

325

1

새 페이지 추가 - 고유주소 변경

0

352

1

the_post가 없으면 무한 루프에 관하여 질문이 있습니다

0

362

1

데이터베이스 선택불가

0

923

3

책 목록 만들기와 아카이브 링크

0

396

2

register_post_type() error

0

280

1

미디어 창에 여러 이미지를 선택하고 렌더링하는 방법

0

273

1

워드프레스에서 액션의 개념

0

401

1

테이블을 직접 만들고 사용하는 방법 문의

1

390

1

수업내용같이 같은 함수를 썼지만 배열을 넣을 수 없습니다 어떤오류인가요?

0

292

2

안녕하세요, 질문드립니다!

0

292

1

안녕하세요

0

234

1

초보질문입니다..

0

353

1