agencies

PHP 프로그래밍 본문

Ⅲ. 정보보안

PHP 프로그래밍

agencies 2024. 2. 10. 09:33

PHP는 Personal Home Page의 약어이며 정식 명칭은 PHP:hypertext preprocessor이다.

PHP는 1994년 라스무스 레도르프가 개발한 웹 프로그래밍 언어로 HTML CSS 자바스크립트가 함께 사용하여 다양한 형태의 웹 사이트를 제작할 수 있다.

 

PHP의 특징

- 대부분의 운영체제에서 구현 가능

PHP는 윈도우 매킨토시 유닉스 리눅스 등 대부분의 운영체제에서 잘 동작한다. 그중에서도 리눅스 운영체제는 중소기업이나 기관에서 PHP를 구동하는 데 가장 많이 사용하고 있다.

 

- 쉽고 편리한 데이터베이스 연동

PHP는 Mysql msql oracle sybase 등의 데이터베이스와 쉽고 편리하게 연동해서 사용할 수 있다.

그 중에서도 PHP와 함께 가장 많이 사용되는 것은 MySQL 데이터베이스다.

 

- 쉬운 코드 작성 단순한 문법

PHP의 문법은 C 언어와 많은 부분이 유사하지만 C 언어보다 훨씬 간단하여 익히기 쉽다.

문법이 단순하고 간결하여 프로그래밍하기 쉽기 때문에 다른 언어보다 프로그램 개발 시간을 단축할 수 있다는 것이 장점이다.

 

- 빠른 처리 속도

PHP는 일반적인 인터프리터 방식 언어인 ASP나 Peal보다 처리 속도가 훨씬 빠르다. 리눅스 운영체제에서 패키지 형태로 많이 사용하는 Apache + PHP + Mysql은 처리 속도가 더 빠르다.


주석

주석이 한 행인 경우

// 내용

주석이 여러 행인 경우

/*
내용
*/

 

큰따옴표와 작은따옴표의 실행 결과가 다른 경우

* 변수에 해당하는 값을 출력하려면 큰 따옴표를 사용해야 한다.

변수명과 문자열이 붙어 있는 경우 {$name}님 안녕하세요 와 같이 쓴다. (또는 아래와 같이 .을 연결해서 사용한다)

 

 

<?=$id?> 는 <?php echo $id?>를 줄여서 표기한 것이다.

 

 

구구단 출력

<table border=1 width=100>
<?php

for($a=1;$a<11;$a++)
{
	for($b=1;$b<10;$b++)
	{	
		echo "<tr><td align=center>$a x $b = ".$a*$b."</td></tr>";
	}
}

?>
</table>

 

 

 

배열

배열은 하나의 변수명에 여러 개의 데이터를 저장할 수 있게 해주는 데이터형이다.

지금까지 변수를 만들 때 $a $b $i $sum과 같이 사용했는데 배열에는 $a[0] $a[1] 와 같이

하나의 배열 변수명으로 여러 개의 데이터를 저장 및 관리할 수 있다.

<?php
$score = array(10,20,30,40,50);
for($i=0;$i<count($score);$i++)
{ echo "score : $score[$i]<br>"; }
?>

 

2차원 배열

<?php
$score = array(array(1, 2, 3, 4, 5),
	     array(10, 20, 30, 40, 50));

echo "\$score[0][0]={$score[0][0]}<br>";
echo "\$score[1][0]={$score[1][0]}<br>";
echo "\$score[3][3]={$score[1][4]}<br>";
?>

 

 

함수의 개념

함수는 그기능이라는 개념을 가지고 있다.

함수는 함수 정의와 함수 호출로 이루어진다.

함수 정의 : 그 함수가 어떤 기능을 수행하는지 정의하는 것

함수 호출 : 정의된 함수를 호출하여 함수 정의에서 기술한 문장을 수행하는 것

<?php
function plus($a, $b)
{
	echo $a+$b;
}

plus(30, 70);
?>

 

함수는 한 번 정의해놓으면 필요할 때 언제든지 호출해서 사용할 수 있다.

즉 프로그래밍에서 중복되는 코드를 하나로 묶어 정의하고 필요할 때마다 활용하는 것이다.

이렇게 함수를 사용하면 코드가 간결해지고 가독성을 높일수 있다.

 


HTTP

HTTP는 웹 브라우저와 웹 서버가 서로 소통하기 위한 프로토콜 즉 통신 규약이다.

우리가 흔히 말하는 웹도 HTTP가 제공하는 서비스를 바탕으로 이루어진다.

웹 페이지에서의 폼 양식 처리를 이해하려면 먼저 HTTP의 동작 원리를 이해해야 한다.

 

웹 브라우저가 HTTP 통신 규약에 의해 웹 서버에 데이터를 요청하면 웹 서버는 이를 처리하여
결과를 웹 브라우저에 돌려준다. 이러한 데이터 흐름은 아래와 같다.


1. 사용자가 웹 브라우저 주소 창에 URL 을 입력하거나 웹 페이지의 링크를 클릭한다.

2. HTTP 통신 규약에 의해 사용자의 요청이 웹서버로 전달된다.

3. 웹 서버는 사용자의 요청을 처리하여 그 결과를 HTTP 통신 규약에 의해 사용자의 웹 브라우저로 전송한다.

4. 웹 브라우저는 웹 서버가 보낸 데이터를 분석하여 화면에 출력한다.

5. 웹 브라우저 화면에 텍스트 글자 동영상 등의 형태로 나타난 요청 결과를 사용자가 확인한다.

 

웹 브라우저에서 웹 서버로 데이터를 전달하는 데에는 POST와 GET 방식이 있다.

POST 방식은 회원 가입 양식이나 게시판에 글을 쓸 때처럼 사용자가 폼 양식에 입력한 데이터를 웹 서버로 전달할 때 사용하며 이미지와 같은 바이너리 파일도 웹 서버로 전달할 수 있다.

GET 방식은 링크를 보낼 때 URL 주소 뒤에 데이터를 입력하여 웹 서버로 전달한다.

'Ⅲ. 정보보안' 카테고리의 다른 글

PHP 쿠키와 세션  (0) 2024.02.10
PHP 파일 업로드  (0) 2024.02.10
악성 코드의 개념  (1) 2024.02.08
Apache에 php 연동하는 방법  (1) 2024.02.06
개인 웹 서버로 위키 만들기 (미디어 위키, XAMPP)  (3) 2024.02.06