330 likes | 462 Views
기초 프로그래밍. Mi-Jung Choi Department of Computer Science Kangwon National University, Korea. Hello PHP 구성 (1/2). 기초 프로그래밍. Source Code 모든 PHP 프로그램은 <?PHP … ?> 혹은 <? … ?> 안에서 사용해야 함 모든 문장은 ; 으로 끝남
E N D
기초 프로그래밍 Mi-Jung Choi Department of Computer Science Kangwon National University, Korea
Hello PHP 구성 (1/2) 기초 프로그래밍 • Source Code • 모든 PHP 프로그램은 <?PHP … ?>혹은 <? … ?>안에서 사용해야 함 • 모든 문장은 ;으로 끝남 • 웹서버가 www.kangwon.ac.kr이고, 파일 이름이 print_test.php 라 하면,http://www.kangwon.ac.kr/print_test.php를 호출 • print 함수의 경우 ()를 생략하기도 함 <?PHP print(“Hello PHP”); print“Hello PHP”; ?>
Hello PHP 구성 (2/2) 기초 프로그래밍 수행 결과 (hello1.php)
에러 발생 (1/2) 기초 프로그래밍 • Source Code • 두 번째 줄에 ; 표기가 빠져 있음 • print라는 함수가 prin으로 잘못 코딩되어 있음 • Parse error 발생 <?PHP prin “Hello PHP” ?>
에러 발생 (2/2) 기초 프로그래밍 수행 결과 (hello2.php, hello3.php)
주석(Comment) (1/2) 기초 프로그래밍 프로그램에 대한 이해를 돕기 위한 글을 적음 comment1.php 프로그램 작성자, 프로그램 작성 의도, 프로그램 동작 형태 등을 적음 <?PHP print“Hello PHP”;// 이 문장은 Hello PHP를 출력하는 문장입니다 /* 이 문장은 Hello PHP를 출력하는 문장입니다. */ ?> • C/C++와 매우 유사함 • 한 줄 Comment: // 혹은 #를 사용 • 여러 줄 Comment: /* 표기와 */ 표기 사용 • Comment를 잘 활용하여 프로그램의 가치를 높일 수 있음
주석(Comment) (2/2) 기초 프로그래밍 잘못된 Comment의 예 (Nesting이 허용되지 않는 경우) comment2.php <?PHP /* 처음 주석의 시작입니다. /* 두번째 주석의 시작입니다. 두번째 주석의 끝입니다. */ 처음 주석의 끝입니다. */ ?> 올바른 Comment의 예 (Nesting이 허용되는 경우) comment3.php <?PHP /* 처음 주석의 시작입니다. // 두번째 주석입니다. // 세번째 주석입니다. // 네번째 주석입니다. 처음 주석의 끝입니다. */ ?>
변수(Variables) (1/5) 기초 프로그래밍 • 변수 • 정보(값)를 저장 • 이름과 형식을 가지고 있음 (e.g., $age) • PHP에서 변수의 특성 • 변수는 ‘$’ 문자로 시작한다. • 변수의 이름은 영문 대문자(A-Z), 소문자(a-z), 숫자(0-9), ‘_’으로 이루어진다. • ‘$’ 다음의 첫 문자로 숫자를 사용할 수 없다. • PHP에서는 변수 형을 선언(declaration)하지 않고 사용한다. PHP 변수의 예 $age $cyber21 $Student_Name $a_b_c $_NUMBER PHP 변수가 아닌 예 $21c cyber $Student-id $Tiger@sun
변수(Variables) (2/5) 기초 프로그래밍 • 변수의 종류 • 불리언 (Boolean) • 정수형 (integer) • 실수형 (floating point numbers, real numbers) • 문자열 (string) • 배열 (array) • 객체 (object) • 변수형 강도 (strength) • PHP는 형 강도가 매우 약하며, 변수에 할당되는 값에 따라 형이 결정됨 • 예: $totalamount = 300 + 500; // integer type $totalamount = “hello”; // string type • 변수형 변환 (casting) • Casting operator 사용: (int), (float), (double), (string), (array), (object) • 예: $totalqty = 0; $totalamount = (double)$totalqty;
변수(Variables) (3/5) 기초 프로그래밍 • 변수형 검사 및 설정 • gettype() 함수는 변수형을 스트링(“integer”, “double”, …)으로 반환함 • settype() 함수는 변수의 형을 주어진 형으로 바꾸어 줌 • 예: $a = 56; var_type1.php print gettype($a); // integer settype($a, “double”); print gettype($a); // double • 변수형 확인 함수 (true or false를 리턴함) var_type2.php • is_array() • is_double(), is_float(), is_real() // 모두 같은 함수임 • is_long(), is_int(), is_integer() // 모두 같은 함수임 • is_string() • is_object() string gettype(mixed var); bool settype(mixed var, string type);
변수(Variables) (4/5) 기초 프로그래밍 변수에 값 대입 <?PHP $sum = 12 + 23; // integer type print$sum; ?> <?PHP $sum = 12.3 – 42.72; // real(float) type) print$sum; ?>
변수(Variables) (5/5) 기초 프로그래밍 정수형 변수의 표현 (int_rep.php) <?PHP $value = 99999999999997; print$value . “<br>”; $value = $value + 1; // $value = 99999999999998 print$value . “<br>”; $value = $value + 1; // $value = 99999999999999 print$value . “<br>”; $value = $value + 1; // $value = 100000000000000 print$value . “<br>”; $value = $value + 1; // $value = 100000000000001 print$value . “<br>”; $value = $value + 1; // $value = 100000000000002 print$value . “<br>”; ?>
연산자 및 수식 계산 (1/2) 기초 프로그래밍 연산자의 종류 및 의미
연산자 및 수식 계산 (2/2) 기초 프로그래밍 사칙 연산자와 나머지 연산자의 사용 예 oprd.php <?PHP $result = 9 + 5; print “9 + 5 = $result<br>”; $result = 9 – 5; print “9 – 5 = $result<br>”; $result = 9 * 5; print “9 * 5 = $result<br>”; $result = 9 / 5; print “9 / 5 = $result<br>”; $result = 9 % 5; print “9 % 5 = $result<br>”; ?>
기타 연산자 (1/2) 기초 프로그래밍 증가 연산자, 감소 연산자 <?PHP $temp++; // $temp = $temp + 1; --$i; // $i = $i – 1; $k++; // $k = $k + 1; ?> 대입 연산자 += -= *= /= %= (e.g., $temp += 3; $temp = $temp + 3;)
기타 연산자 (2/2) 기초 프로그래밍 증가 연산자의 사용 예 (inc_dec.php) <?PHP $temp = 1; if($temp++ == 1) print "temp in the 1st if() is 1"; else print "temp in the 1st if() is 2"; $temp = 1; if(++$temp == 1) print ", and temp in 2nd if() is 1."; else print ", and temp in the 2nd if() is 2."; ?>
스트링 연산자 기초 프로그래밍 Concatenation을 수행하는 “.” 연산자 사용 두 문자열을 연결하는 연산자임 (concat.php) <? $city = “in Chunchon”; $name1 = “Kangwon ”; $name2 = “National University “; print $name1.$name2.$city; ?>
수학적 함수 (1/2) 기초 프로그래밍 삼각함수(sin, cos, …)는 기본적으로 Radian 사용 (2 = 360) 로그함수 log()는 기본적으로 자연 로그(밑이 e)이며, 대수 로그(밑이 10)는 log10()을 사용한다. 삼각함수의 사용 예(sin_cos1.php) <?PHP $result = sin(M_PI / 6); print “sin(30) = $result<br>”; $result = cos(M_PI / 6); print “cos(30) = $result<br>”; $result = tan(M_PI / 6); print “tan(30) = $result<br>”; $result = asin(0.5); print “asin(0.5) = $result<br>”; $result = acos(0.866025); print “acos(0.866025) = $result<br>”; $result = atan(0.57735); print “atan (0.57735) = $result<br>”; ?>
수학적 함수 (2/2) 기초 프로그래밍 Degree 값(360도 기준 값) 사용 deg2rad() 함수 활용 sin_cos2.php <?PHP $degree = 30; $radian = deg2rad($degree); $result = sin($radian); print “sin(30) = $result”; ?> log(), log10(), sqrt() 사용 예 sin_cos2.php <?PHP $result = log (10); print “log(10) = $result<br>”; $result = log10 (10); print “log10(10) = $result<br>”; $result = sqrt (49); print “sqrt(49) = $result”; ?>
Bitwise 연산자 기초 프로그래밍 사용 예 bitwise.php
연산자 우선순위 기초 프로그래밍
if-else 구문 (1/2) 기초 프로그래밍 주어진 조건에 따라서 서로 다른 문장을 수행 문법 if(condition) statement; if(condition) { statement1; statement2; } if(condition1) statement; elseif(condition2) statement; elseif(condition3) statement; elseif(condition4) statement; else statement; if(condition) statement; else statement;
if-else 구문 (2/2) 기초 프로그래밍 if-else 구문의 예(ifelse.php) <?PHP $temp1 = 1; $temp2 = 2; if($temp1 == 1 && $temp2 == 1) print "condition of if() is true."; elseif($temp1 == 1 && $temp2 == 2) { print "condition of elseif() is true.<br>"; print "temp 1 is 1 and temp2 is 2."; } else print "condition of else is true."; ?>
비교 연산자 (1/2) 기초 프로그래밍
비교 연산자 (2/2) 기초 프로그래밍 비교 연산자 사용 예(comp_op.php) <?PHP $a = 123; $b = 456; if ($a == $b) print “두 값이 같습니다.<br>”; if ($a != $b) print “두 값이 같지 않습니다.<br>”; if ($a < $b) print “$a값이 $b값보다 작습니다.<br>”; if ($a > $b) print “$a값이 $b값보다 큽니다.<br>”; if ($a <= $b) print “$a값이 $b값보다 작거나 같습니다.<br>”; if ($a >= $b) print “$a값이 $b값보다 크거나 같습니다.<br>”; if ($a === $b) print “$a값이 $b값과 동일합니다.<br>”; ?>
삼항 연산자 (? :) 기초 프로그래밍 (condition) ? statement_true : statement_false; (cond_st.php) <?PHP $num = 5; (($num % 2) == 1) ? print “홀수” : print “짝수”; print “<br>”; $num = 8; (($num % 2) == 1) ? print “홀수” : print “짝수”; ?>
논리 연산자 기초 프로그래밍 사용 예 logicop.php
while 구문 (1/2) 기초 프로그래밍 문법 while 구문의 사용 예 (while.php) while (expression) statement <?PHP $i = 1; $sum = 0; while ($i < 101) { $sum = $sum + $i; $i = $i + 1; } print “The sum from 1 to 100 is $sum”; ?>
while 구문 (2/2) 기초 프로그래밍 무한 루프의 예 <?PHP $i = 0; $value = 1; while (TRUE) { $value = $value * 3; $i = $i + 1; if ($value > 10000) break; } print$i; ?>
do-while 구문 기초 프로그래밍 문법 do-while 구문의 사용 예 (do-while.php) do statement while (expression); <?PHP $i = 1; do { $j = $i * 5; $i = $i + 1; print$j. “<br>”; } while ($j < 100); ?>
함수 정의 (1/3) 기초 프로그래밍 문법 add() 함수의 정의 func_add.php function func_name($var1, $var2, ...) { statements; } <?PHP functionadd($x, $y) { $sum = $x + $y; return$sum; } $result = add (3, 5); print$result; ?>
함수 정의 (2/3) 기초 프로그래밍 Default Values (func_def.php) <?PHP functionmy_log ($arg, $base = 2) { $result = log ($arg) / log ($base); return$result; } print “log2(10) = ” . my_log(10, 2) . “<br>”; print “log10(100) = ” . my_log(100, 10) . “<br>”; print “log2(8) = ” . my_log(8, 2) . “<br>”; print “<br>”; print “log2(8) = ” . my_log(8) . “<br>”; ?>
함수 정의 (3/3) 기초 프로그래밍 func_get_args() 함수 활용 (func_arg.php) <?PHP functionmy_print () { $args = func_get_args (); foreach ($args as$arg) print “파라미터: $arg<br>”; } my_print (“Apple”, “Orange”, “Pear”, “Banana”, “Cherry”); ?>