웹 개발 기초: PHP의 이해와 활용
📚 학습 목표
- PHP의 기본 개념과 특징 이해
- PHP의 기본 문법과 변수 사용법 익히기
- 함수의 정의와 사용 방법 배우기
- 폼 데이터 처리 방법 이해하기
- 데이터베이스와의 연동 기초 배우기
1. PHP의 개념과 특징
PHP(Hypertext Preprocessor)는 서버 사이드 스크립트 언어로, 주로 웹 개발에 사용됩니다. PHP는 HTML과 결합하여 동적인 웹 페이지를 생성하는 데 강력한 기능을 제공합니다.
1.1 PHP의 주요 특징
- 서버 사이드 스크립팅: PHP는 서버에서 실행되어 클라이언트에게 HTML을 반환합니다.
- 오픈 소스: 무료로 사용할 수 있으며, 널리 사용되는 커뮤니티가 지원합니다.
- 크로스 플랫폼: Windows, macOS, Linux 등 다양한 운영 체제에서 사용 가능합니다.
- 데이터베이스와의 강력한 통합 지원: MySQL, PostgreSQL 등 여러 데이터베이스와 쉽게 연동됩니다.
- 객체 지향 프로그래밍(OOP): 객체 지향 프로그래밍을 지원하여 재사용성과 유지 관리성을 높입니다.
2. PHP 기본 문법과 변수
2.1 PHP 문법
PHP 코드는 <?php와 ?> 태그 사이에 작성됩니다. HTML 내에서도 PHP 코드를 삽입할 수 있습니다.
<?php
echo "Hello, World!"; // 화면에 출력
?>
2.2 변수 사용
PHP에서 변수는 $ 기호로 시작하며, 대소문자를 구분합니다. 변수에 값을 할당할 때는 = 연산자를 사용합니다.
<?php
$name = "Alice"; // 문자열 변수
$age = 25; // 정수 변수
$isStudent = true; // 불리언 변수
echo "Name: $name, Age: $age"; // 문자열 출력
?>
2.3 데이터 타입
PHP는 여러 데이터 타입을 지원합니다:
- 문자열: 큰따옴표 또는 작은따옴표로 감싸는 텍스트
- 정수 및 부동소수점: 숫자형 데이터
- 불리언: true 또는 false
- 배열: 여러 값을 한 변수에 저장할 수 있는 데이터 구조
- 객체: 클래스의 인스턴스
3. 함수의 정의와 사용
PHP에서 함수는 코드의 재사용성을 높이기 위한 기능입니다. 함수를 정의하고 사용하려면 다음을 따릅니다.
3.1 함수 정의
function 키워드를 사용하여 함수를 정의할 수 있습니다.
<?php
function greet($name) {
return "Hello, $name!";
}
?>
3.2 함수 호출
정의된 함수를 호출하려면 함수 이름과 괄호를 사용합니다.
<?php
echo greet("Alice"); // "Hello, Alice!" 출력
?>
3.3 기본 인자와 반환 값
함수는 기본 인자를 설정할 수 있으며, 값을 반환할 수 있습니다.
<?php
function add($a, $b = 0) { // 두 번째 인자는 기본값
return $a + $b;
}
echo add(5); // 5 출력
echo add(5, 10); // 15 출력
?>
4. 폼 데이터 처리
PHP는 HTML 폼에서 사용자 입력 데이터를 처리하는 데 매우 유용합니다. 폼 데이터는 GET 또는 POST 메서드로 서버에 전송됩니다.
4.1 HTML 폼 예제
<form action="process_form.php" method="POST">
Name: <input type="text" name="name">
Age: <input type="number" name="age">
<input type="submit" value="Submit">
</form>
4.2 PHP 폼 처리
위의 폼 데이터는 process_form.php 파일에서 처리할 수 있습니다.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = htmlspecialchars($_POST['name']); // 사용자 입력 안전하게 처리
$age = (int)$_POST['age']; // 숫자로 변환
echo "Name: $name<br>";
echo "Age: $age";
}
?>
4.3 데이터 유효성 검사
사용자 입력에 대한 유효성 검사를 수행하여 데이터를 확인할 수 있습니다.
<?php
if (!empty($name) && !empty($age)) {
// 유효한 데이터 처리
} else {
echo "모든 필드를 입력하세요.";
}
?>
5. 데이터베이스와의 연동
PHP는 MySQL과 같은 데이터베이스와 쉽게 연동하여 데이터를 저장하고 검색할 수 있습니다. 이를 통해 동적인 웹 애플리케이션을 구축할 수 있습니다.
5.1 데이터베이스 연결
PHP에서 MySQL에 연결할 때는 mysqli 또는 PDO를 사용할 수 있습니다. 여기서는 mysqli를 사용하겠습니다.
<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "my_database";
// 데이터베이스 연결
$conn = new mysqli($servername, $username, $password, $dbname);
// 연결 체크
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
5.2 데이터 삽입
데이터베이스에 데이터를 삽입하는 방법입니다.
<?php
$name = "Alice";
$age = 25;
$sql = "INSERT INTO users (name, age) VALUES ('$name', $age)";
if ($conn->query($sql) === TRUE) {
echo "새로운 레코드 삽입 성공";
} else {
echo "오류: " . $sql . "<br>" . $conn->error;
}
?>
5.3 데이터 조회
데이터베이스로부터 데이터를 검색합니다.
<?php
$sql = "SELECT id, name, age FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"] . " - Name: " . $row["name"] . " - Age: " . $row["age"] . "<br>";
}
} else {
echo "0 results";
}
?>
5.4 연결 종료
모든 작업이 끝난 후에는 데이터베이스 연결을 종료해야 합니다.
<?php
$conn->close();
?>
📌 마무리
이번 포스트에서는 PHP의 기본 개념과 특징, 기본 문법, 변수 사용법, 함수 정의와 사용, 폼 데이터 처리, 데이터베이스와의 연동에 대해 알아보았습니다. PHP는 웹 개발에서 굉장히 유용한 언어이며, 이러한 기초 지식을 통해 더 복잡한 프로젝트를 진행할 수 있는 능력을 갖출 수 있습니다
'KnockOn > 2week' 카테고리의 다른 글
| [2주차 TIL] KnockOn Bootcamp Mysql (0) | 2024.12.16 |
|---|---|
| [2주차 TIL] KnockOn Bootcamp Apache (0) | 2024.12.16 |
| [2주차 TIL] KnockOn Bootcamp Javascript (0) | 2024.12.16 |
| [2주차 TIL] KnockOn Bootcamp HTML (0) | 2024.12.16 |