PHP / 반복문 / while, do-while, for

while

문법

while ( condition ) {
  statement;
}

condition을 만족할 때까지 중괄호 안에 있는 statement를 실행합니다.

중괄호 대신 콜론(:)과 endwhile을 사용할 수도 있습니다.

while ( condition ) :
  statement;
endwhile;

예제

<?php
  $i = 1;               // 초기값 설정
  while ( $i < 10 ) {   // 조건을 만족하면 실행, 만족하지 않으면 빠져나감
    echo $i;            // $i의 값 출력
    $i++;               // 1씩 증가
  }
?>

123456789가 출력됩니다.

do-while

문법

do {
  statement;
} while ( condition );

condition을 만족할 때까지 중괄호 안에 있는 statement를 실행합니다.

while은 조건 만족 여부를 먼저 검사하고 실행하는 반면, do-while은 실행을 먼저 하고 조건 만족 여부를 검사합니다.

예제

<?php
  $i = 1;                // 초기값 설정
  do {
    echo $i;             // $i의 값 출력
    $i++; // 1씩 증가
  } while ( $i < 10 );   // 조건을 만족하면 위의 코드 실행, 만족하지 않으면 빠져나감
?>

123456789를 출력합니다.

for

문법

for ( expr1; expr2; expr3 ) {
  statement;
}

expr1을 실행합니다.

expr2를 만족하는지 검사합니다.

expr2를 만족하면 statement를 실행하고, expr3을 실행합니다.

expr2를 만족하지 않으면 빠져나옵니다.

중괄호 대신 콜론(:)과 endfor를 사용할 수도 있습니다.

for ( expr1; expr2; expr3 ) :
  statement;
endfor;

예제

<?php
  for ( $i = 1; $i < 10; $i++ ) {
    echo $i;
  }
?>

123456789를 출력합니다.

구구단 만들기

반복문 안에 반복문을 넣을 수 있습니다.

다음은 각 반복문으로 구구단의 1단부터 3단까지 출력하는 예제입니다.

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>PHP</title>
    <style>
      body {
        font-family: Consolas, monospace;
        font-style: italic;
      }
      h1 {
        font-size: 20px;
      }
      table {
        width: 100%;
      }
    </style>
  </head>
  <body>
    <table>
      <tr>
        <td>
          <h1><code>while</code></h1>
          <?php
            $i = 1;
            while ( $i < 4 ) {
              $j = 1;
              while ( $j < 10 ) {
                echo $i . ' × ' . $j . ' = ' . $i * $j . '<br>';
                $j++;
              }
              $i++;
            }
          ?>
        </td>
        <td>
          <h1><code>do-while</code></h1>
          <?php
            $i = 1;
            do {
              $j = 1;
              do {
                echo $i . ' × ' . $j . ' = ' . $i * $j . '<br>';
                $j++;
              } while ( $j < 10 );
              $i++;
            } while ( $i < 4 );
          ?>
        </td>
        <td>
          <h1><code>for</code></h1>
          <?php
            for( $i = 1; $i < 4; $i++ ) {
              for( $j = 1; $j < 10; $j++ ) {
                echo $i . ' × ' . $j . ' = ' . $i * $j . '<br>';
              }
            }
          ?>
        </td>
      </tr>
    </table>
  </body>
</html>

같은 카테고리의 다른 글
PHP / SQL Server / Ubuntu 18.04에서 연결하는 방법

PHP / SQL Server / Ubuntu 18.04에서 연결하는 방법

PHP에서 SQL Server에 연결하는 방법입니다. 서버 OS는 Ubuntu 18.04이고 Apache, PHP는 설치되어 있는 상태에서 시작합니다. 아래의 내용은 꼭 필요한 것만 모은 요약이며, 자세한 내용은 Microsoft 홈페이지에서 보실 수 있습니다. 소프트웨어 설치 다음의 명령을 차례대로 실행하여 필요한 소프트웨어를 설치합니다. curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list apt-get update ACCEPT_EULA=Y apt-get install msodbcsql17 apt-get install unixodbc-dev apt install ...

PHP / 함수 / strlen(), mb_strlen() / 문자열의 길이 구하는 함수

PHP / 함수 / strlen(), mb_strlen() / 문자열의 길이 구하는 함수

개요 strlen()와 mb_strlen()은 문자열의 길이를 구하는 함수입니다. strlen()은 바이트 기준, mb_strlen()은 문자셋 기준입니다. 한글 등에서는 값이 다릅니다. 문법 - strlen() strlen( string ) string : 길이를 구할 문자열입니다. echo strlen( '123 abc' ); 는 7을 출력합니다. echo strlen( '가나다' ); 는 9를 출력합니다. 문법 - mb_strlen() mb_strlen( string ) string : 길이를 구할 문자열입니다. encoding : 인코딩 방식을 정합니다. 정하지 않으면 ...

PHP / 함수 / phpinfo() / PHP 정보와 설정 출력하는 함수

PHP / 함수 / phpinfo() / PHP 정보와 설정 출력하는 함수

개요 phpinfo()는 PHP 정보와 설정을 표로 정리해서 보여주는 함수입니다. PHP 파일 생성 다음의 코드를 가진 phpinfo.php 파일을 만듭니다.(파일 이름은 다른 것으로 해도 상관없습니다.) <?php phpinfo(); ?> 웹브라우저로 접속 웹브라우저로 phpinfo.php에 접속합니다. 그러면 다음처럼 정보를 출력합니다. PHP / 함수 / phpversion() – PHP 버전 출력하는 함수

PHP / 연산자 / 산술 연산자

PHP / 연산자 / 산술 연산자

PHP의 산술 연산자에는 +, -, *, /, %, **이 있습니다. - $a $a의 부호를 반대로 바꿉니다. <?php   $a = 10;   echo - $a; ?> -10을 출력합니다. $a + $b $a와 $b를 더합니다. <?php $a = 10; $b = 4; echo $a + $b; ?> 14를 출력합니다. $a - $b $a에서 $b를 뺍니다. <?php $a = 10; $b = ...

PHP / number_format() / 숫자 표현 형식 정하는 함수

PHP / number_format() / 숫자 표현 형식 정하는 함수

number_format() 함수로 숫자의 표현 형식을 정한다. 천 단위 쉼표를 찍을 수도 있고, 소숫점 아래 표시할 숫자의 개수를 정할 수도 있다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>PHP</title> <style> body { ...

PHP / addslashes(), stripslashes()

PHP / addslashes(), stripslashes()

addslashes() 작은 따옴표, 큰 따옴표, 백슬래시 앞에 백슬래시를 추가한다. 즉, PHP 'PHP' "PHP"를 PHP \'PHP\' \"PHP\"로 변경한다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>PHP</title> <style> * { font-family: "Consolas", monospace; ...

PHP / 다른 페이지로 리디렉션(Redirection)하는 방법

PHP / 다른 페이지로 리디렉션(Redirection)하는 방법

여러 가지 이유로 a.php로 접속했을 때 b.php로 자동 이동하게 만들어야 할 경우가 있습니다. 이를 보통 리디렉션(Redirection)이라고 하는데, PHP에서는 다음과 같은 코드로 리디렉션을 구현할 수 있습니다. 다음과 같은 코드가 있는 페이지에 접속하면 https://www.codingfactory.net로 이동합니다. header( 'Location: https://www.codingfactory.net' ); 일정 시간 지난 후에 이동시키고 싶다면 sleep() 함수를 이용하세요. 다음은 5초 후 이동시키는 코드입니다. sleep( 5 ); header( ...

PHP / MariaDB / 데이터베이스에 데이터 입력하기

PHP / MariaDB / 데이터베이스에 데이터 입력하기

이 강좌에서 사용하는 데이터베이스는 employees입니다. (employees 설치 하기) 폼(Form) 만들기 - employees_add.php 데이터를 입력할 폼을 만듭니다.(number, date 타입과 required는 HTML5부터 지원합니다.) 값은 employees_insert.php로 전송됩니다. <form action="employees_insert.php" method="POST"> <p><input type="number" name="emp_no" placeholder="NO" required></p> <p><input type="date" name="birth_date" required></p> <p><input type="text" name="first_name" placeholder="First Name" required></p> <p><input type="text" name="last_name" placeholder="Last Name" required></p> <p><select name="gender" ...

PHP / 연산자 / 비교 연산자

PHP / 연산자 / 비교 연산자

비교 연산자는 두 값을 비교하는 연산자입니다. $a == $b $a와 $b가 같으면 TRUE를 반환합니다. 예를 들어 $a = 123; $b = 123; 이면 TRUE입니다. 또한 $a = 123; $b = '123'; 일 때도 TRUE입니다. $a === $b $a와 $b가 같고, 자료형도 같아야 TRUE를 반환합니다. 예를 들어 $a = 123; $b = 123; 이면 TRUE입니다. 하지만 $a = 123; $b = '123'; 은 FALSE입니다. $a != $b $a가 $b와 같지 ...

PHP / 함수 / mysqli_connect() / MySQL server 또는 MariaDB Server에 연결하는 함수

PHP / 함수 / mysqli_connect() / MySQL server 또는 MariaDB Server에 연결하는 함수

개요 mysqli_connect는 MySQL server 또는 MariaDB Server에 연결하는 함수입니다. 문법 mysqli_connect( host, username, password, databasename, port, socket ); 예제 1 데이터베이스 서버에 연결하고 결과를 출력합니다. <?php $jb_connect = mysqli_connect( 'localhost', 'jb', '1234', 'employees' ); var_dump( $jb_connect ); ?> 연결에 성공한 경우입니다. 연결에 실패하면 false를 반환합니다. 예제 2 연결에 성공하면 Success, 실패하면 Failure를 출력합니다. <!doctype html> <html lang="ko"> <head> ...