[PHP] 제어문
* 슈퍼글로벌 (PHP의 미리 정의된 전역변수)
1. $GLOBALS
2. $_ SERVER
3. $_GET
4. $_POST
5. $_FILES
6. $_COOKIE
7. $_SESSION
8. $_REQUEST
9. $_EVN
1. 조건문
if문 elseif문 else문
지정한 조건의 결과값에 따라 코드를 다르게 실행
if(조건) {
조건이 true일 때 실행
} elseif(조건2) { // else if(x) elseif(o)
조건2가 true일 때 실행
} esle {
조건1, 조건2가 false일 때 실행
}
switch문
switch(값){
case 조건1:
조건1이 해당될 떄 실행;
break;
case 조건2:
조건2이 해당될 떄 실행;
break;
case 조건3:
조건3이 해당될 떄 실행;
break;
default:
위 조건이 모두 해당 안될 떄 실행;
}
2. 반복문
프로그램 내에서 같은 명령을 일정 반복횟수만큼 반복하여 수행하는 명령문
1) while문
특정 조건을 만족할 때까지 주어진 명령문을 반복해서 실행
while(조건) {
반복할 코드;
}
2) do/while문
조건의 결과와 관계없이 무조건 한번은 코드 실행
do {
반복할 코드;
} while(조건)
3) for문
초기값, 표현식, 증감식을 모두 포함하고 있는 반복문
for(초기식; 표현식; 증감식){
반복할 코드;
}
for($i=0; $i<10; $i++){
echo $i;
}
4) foreach문
foreach(배열 as 값을 저장할 변수) {
실행할 명령문;
}
ex06_condition.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
// $n = 10;
// _GET은 URL 값을 받아쓰는 방법 ( ?number=10 )
$n = $_GET['number']; // []는 배열의 키로 접근
if($n % 3 == 0) {
echo "{$n}은 3의 배수이다.<br/>";
} elseif ($n % 5 == 0) {
echo "{$n}은 5의 배수이다.<br/>";
} else {
echo "{$n}은 3과 5의 배수가 아니다.<br/>";
}
$username = $_GET['name'];
echo "{$username}님 안녕하세요.<br/>";
$score = 50;
switch($score) {
case 100:
echo "점수는 100점입니다.";
break; // break 없으면 break 만나기 전까지 걍 진행
case 90:
echo "점수는 90점입니다.";
break;
case 80:
echo "점수는 80점입니다.";
break;
default:
echo "점수는 70점입니다.";
}
?>
</body>
</html>
ex07_loop.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
$i = 1;
while($i < 10) {
echo $i."<br/>";
$i++;
}
while(false) {
echo $i."<br/>";
$i++;
}
$j = 0;
do {
echo $j."<br/>";
$j++;
} while($j < 10);
do {
echo $j."<br/>";
$j++;
} while(false);
//foreach
$arr = array(1, 2, 3, 4, 5);
foreach($arr as $value) {
echo "{$value}입니다<br/>";
}
$arr2 = array("key1"=>"수박", "key2"=>"딸기", "key3"=>"복숭아");
foreach($arr2 as $key => $value){
echo "배열에서 key는 {$key}이고 value는 {$value}입니다.<br/>";
}
?>
</body>
</html>
ex07_구구단.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
for($i = 2; $i < 10; $i++) {
echo "{$i}단입니다.<br/>";
for($j = 1; $j < 10; $j++) {
echo "{$i} * {$j} = ".($i*$j)."<br/>";
}
}
$n = $_GET['number'];
echo "{$n}단입니다.<br/>";
for($k = 1; $k < 10; $k++) {
echo "{$n} * {$k} = ".($n*$k)."<br/>";
}
?>
</body>
</html>