====== PHP 개발 가이드라인 ======
이 문서는 PHP 언어를 사용하여 웹 애플리케이션을 개발하는 데 필요한 기본적인 가이드라인을 제공합니다. PHP의 개요, 핵심 문법, 그리고 실용적인 예제를 통해 효율적인 개발을 돕고자 합니다.
{{wiki:it:programming:php_1.png?400}}
----
===== 1. PHP 개요 =====
----
==== 1) PHP란? ====
PHP는 'Hypertext Preprocessor'의 약자로, 웹 개발에 특화된 **서버 사이드 스크립트 언어**입니다. HTML에 포함되어 동적인 웹 페이지를 생성하는 데 주로 사용되며, 웹 서버에서 실행되어 사용자에게 결과를 전송합니다. PHP는 오픈 소스이며, 전 세계적으로 가장 널리 사용되는 웹 개발 언어 중 하나입니다.
----
==== 2) PHP의 특징 ====
PHP는 다음과 같은 주요 특징을 가지고 있어 많은 개발자에게 사랑받고 있습니다.
* **배우기 쉬운 문법**: 다른 프로그래밍 언어에 비해 문법이 직관적이고 간단하여 초보자도 쉽게 학습할 수 있습니다.
* **강력한 기능**: 웹 개발에 필요한 다양한 내장 함수와 기능을 제공하며, 파일 처리, 데이터베이스 연동, 세션 관리 등 광범위한 작업을 지원합니다.
* **광범위한 지원**: Apache, Nginx 등 다양한 웹 서버와 호환되며, 리눅스, 윈도우, macOS 등 여러 운영체제에서 실행될 수 있습니다.
* **다양한 데이터베이스 연동**: MySQL, PostgreSQL, Oracle, SQLite 등 대부분의 주요 데이터베이스와 손쉽게 연동할 수 있습니다.
* **오픈 소스**: 자유롭게 사용, 수정, 배포할 수 있는 오픈 소스 프로젝트로, 활발한 커뮤니티 지원을 받을 수 있습니다.
===== 2. PHP 기본 문법 =====
----
==== 1) 스크립트 태그 ====
PHP 코드는 웹 서버에서 실행되기 위해 특별한 태그 내에 작성되어야 합니다. 가장 일반적이고 권장되는 태그는 다음과 같습니다.
* **권장 태그**: ` ... ?>`
* **짧은 태그 (지양)**: ` ... ?>` - 서버 설정에 따라 동작하지 않을 수 있으므로 사용을 지양합니다.
----
==== 2) 주석 ====
코드에 대한 설명이나 특정 코드 블록을 비활성화할 때 주석을 사용합니다.
* **한 줄 주석**:
* **여러 줄 주석**:
----
==== 3) 변수 ====
PHP에서 변수는 데이터를 저장하는 데 사용됩니다. 모든 변수는 달러 기호(``$``)로 시작합니다.
* **변수 선언 및 할당 예제**:
* **주요 데이터 타입**:
* **String**: 문자열 (`''Hello, World!''`)
* **Integer**: 정수 (`''123''`)
* **Float (Double)**: 실수 (`''3.14''`)
* **Boolean**: 논리값 (`''true''` 또는 `''false''`)
* **Array**: 여러 값을 저장하는 배열
* **Object**: 객체 (클래스의 인스턴스)
* **NULL**: 값이 없음을 나타내는 특별한 타입
* **Resource**: 외부 자원에 대한 참조 (예: 데이터베이스 연결)
----
==== 4) 상수 ====
상수는 한 번 정의되면 변경할 수 없는 값을 저장합니다.
* `define()` 함수 사용:
* `const` 키워드 사용 (PHP 5.3+):
----
==== 5) 연산자 ====
PHP는 다양한 연산자를 제공합니다.
* **주요 연산자 유형**:
* **산술 연산자**: +, -, *, /, % (나머지), ** (거듭제곱)
* **할당 연산자**: =, +=, -=, *= 등
* **비교 연산자**: == (값 동일), === (값 및 타입 동일), !=, !==, __<__, __>__, <=, >=
* **논리 연산자**: && (AND), || (OR), ! (NOT)
* **증감 연산자**: ++ (증가), -- (감소)
----
==== 6) 조건문 ====
특정 조건에 따라 코드 블록을 실행할 때 사용합니다.
* `if`, `else if`, `else` 문:
= 90) {
echo "A학점";
} else if ($score >= 80) {
echo "B학점";
} else {
echo "C학점 이하";
}
?>
* `switch` 문:
----
==== 7) 반복문 ====
코드 블록을 여러 번 반복 실행할 때 사용합니다.
* `for` 문:
* `while` 문:
* `foreach` 문 (배열에 주로 사용):
----
==== 8) 함수 ====
특정 작업을 수행하는 코드 블록을 함수로 정의하여 재사용성을 높일 수 있습니다.
* **함수 정의 및 호출 예제**:
----
==== 9) 배열 ====
배열은 여러 값을 하나의 변수에 저장하는 데 사용됩니다.
* **인덱스 배열 (숫자 인덱스)**:
* **연관 배열 (문자열 키)**:
"김철수",
"age" => 25,
"city" => "서울"
);
echo $person["name"]; // 김철수
?>
===== 3. PHP 예제 =====
다음은 위에서 설명한 문법을 활용한 간단한 PHP 코드 예제입니다.
----
==== 1) 'Hello, World!' 출력 예제 ====
가장 기본적인 PHP 스크립트입니다.
----
==== 2) 변수 및 조건문 사용 예제 ====
사용자의 나이에 따라 메시지를 다르게 출력하는 예제입니다.
= 18) {
echo "성인입니다.";
} else {
echo "미성년자입니다.";
}
?>
----
==== 3) 배열 및 반복문 사용 예제 ====
배열에 저장된 과일 목록을 `foreach` 문을 사용하여 출력하는 예제입니다.
----
==== 4) 간단한 함수 정의 예제 ====
두 수를 더하는 간단한 함수를 정의하고 사용하는 예제입니다.
====== 결론 ======
PHP는 강력하고 유연하며 배우기 쉬운 웹 개발 언어입니다. 이 가이드라인이 PHP의 기본적인 개념과 문법을 이해하는 데 도움이 되었기를 바랍니다. 실제 프로젝트에 적용하면서 더욱 깊이 있는 학습과 경험을 쌓으시길 권장합니다. 지속적인 연습과 다양한 라이브러리/프레임워크 학습을 통해 더욱 효율적인 PHP 개발자가 될 수 있습니다.
====== 관련 문서 ======
* [[wiki:it:wiki:start|DokuWiki 개발]]