IMG-LOGO
공지사항 :

PHP

lmkfox - 2025-04-05 07:10:06 38 Views 0 Comment

PHP란? 완벽 가이드

PHP는 서버 측에서 실행되는 스크립트 언어로, 동적인 웹 페이지를 만들기 위해 널리 사용됩니다. 이 글에서는 PHP의 개념, 특징, 기본 문법, 주요 기능, 최신 트렌드 등을 자세히 설명하겠습니다.


1. PHP란?

PHP(Hypertext Preprocessor)는 서버에서 실행되는 프로그래밍 언어로, 웹 개발에 최적화되어 있습니다.

PHP의 주요 특징

서버 사이드 실행 → 클라이언트가 아닌 서버에서 실행

HTML과 통합 가능 → HTML 코드 내에서 직접 삽입 가능

데이터베이스 연동 용이 → MySQL, PostgreSQL 등과 쉽게 연결

오픈 소스 및 무료 → 누구나 자유롭게 사용 가능

플랫폼 독립적 → Windows, Linux, macOS에서 실행 가능


2. PHP의 활용 분야

활용 분야

설명

동적 웹 페이지

로그인, 회원가입, 게시판 등

데이터베이스 연동

MySQL, MariaDB 등을 이용한 데이터 처리

API 개발

RESTful API를 만들어 모바일 및 웹 애플리케이션과 연동

CMS (콘텐츠 관리 시스템)

워드프레스, Drupal, Joomla 등에서 사용

전자상거래

쇼핑몰, 결제 시스템 구축


3. PHP 기본 문법

① PHP 코드 실행 방법

PHP 코드는 .php 확장자를 가진 파일에 작성되며, 웹 서버에서 실행됩니다.

기본적인 PHP 코드

<?php
    echo "안녕하세요, PHP입니다!";
?>

웹 브라우저에서 실행하면 안녕하세요, PHP입니다!가 출력됩니다.


② 변수 선언

PHP에서는 $ 기호를 사용하여 변수를 선언합니다.

<?php
    $name = "홍길동";
    $age = 25;
    echo "이름: " . $name . ", 나이: " . $age;
?>

PHP 변수는 데이터 타입을 명시하지 않아도 자동으로 할당됩니다.


③ 데이터 타입

PHP는 다음과 같은 데이터 타입을 지원합니다.

<?php
    $num = 10;          // 정수
    $pi = 3.14;         // 실수
    $text = "문자열";    // 문자열
    $isTrue = true;     // 불리언 (true/false)
    $empty = null;      // 널 값
    $arr = array(1, 2, 3);  // 배열
?>


④ 연산자

<?php
    $a = 10;
    $b = 5;

    echo $a + $b;  // 더하기
    echo $a - $b;  // 빼기
    echo $a * $b;  // 곱하기
    echo $a / $b;  // 나누기
    echo $a % $b;  // 나머지
    echo $a === $b; // 값과 타입 비교
?>


⑤ 조건문

<?php
    $age = 20;

    if ($age >= 18) {
        echo "성인입니다.";
    } else {
        echo "미성년자입니다.";
    }
?>


⑥ 반복문

for 반복문

<?php
    for ($i = 0; $i < 5; $i++) {
        echo "반복: " . $i . "<br>";
    }
?>

while 반복문

<?php
    $count = 0;
    while ($count < 3) {
        echo "현재 카운트: " . $count . "<br>";
        $count++;
    }
?>


⑦ 함수

PHP에서 함수를 정의하는 방법입니다.

일반 함수

<?php
    function greet($name) {
        return "안녕하세요, " . $name . "님!";
    }

    echo greet("철수");
?>

익명 함수

<?php
    $greet = function($name) {
        return "안녕하세요, " . $name . "님!";
    };

    echo $greet("영희");
?>


4. PHP의 주요 기능

① HTML과 함께 사용

PHP는 HTML 코드 안에서 쉽게 사용할 수 있습니다.

<!DOCTYPE html>
<html>
<head>
    <title>PHP 테스트</title>
</head>
<body>
    <h1><?php echo "PHP를 이용한 동적 페이지"; ?></h1>
</body>
</html>


② 데이터베이스 연동 (MySQL 사용)

PHP는 MySQL과 같은 데이터베이스와 쉽게 연결됩니다.

<?php
    $conn = mysqli_connect("localhost", "root", "password", "test_db");

    if (!$conn) {
        die("연결 실패: " . mysqli_connect_error());
    }

    $result = mysqli_query($conn, "SELECT * FROM users");

    while ($row = mysqli_fetch_assoc($result)) {
        echo "이름: " . $row["name"] . "<br>";
    }

    mysqli_close($conn);
?>


③ 폼 데이터 처리

<!DOCTYPE html>
<html>
<body>

<form method="post" action="process.php">
  이름: <input type="text" name="name">
  <input type="submit">
</form>

</body>
</html>
// process.php
<?php
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $name = $_POST["name"];
        echo "입력한 이름: " . htmlspecialchars($name);
    }
?>


④ 세션과 쿠키 관리

세션 사용

<?php
    session_start();
    $_SESSION["username"] = "홍길동";
    echo "세션이 설정되었습니다.";
?>

쿠키 설정

<?php
    setcookie("user", "철수", time() + 3600);
    echo "쿠키가 설정되었습니다.";
?>


5. PHP 최신 문법 (PHP 8.x)

① 널 병합 연산자 (??)

<?php
    $name = $_GET["name"] ?? "기본값";
    echo $name;
?>

② 매치 표현식 (Match Expression)

<?php
    $status = 2;

    echo match ($status) {
        1 => "처리 중",
        2 => "완료됨",
        3 => "보류됨",
        default => "알 수 없음",
    };
?>


6. PHP 프레임워크

PHP 개발을 더 효율적으로 하기 위해 다양한 프레임워크가 존재합니다.

프레임워크

특징

Laravel

가장 인기 있는 PHP 프레임워크

CodeIgniter

가볍고 빠른 프레임워크

Symfony

엔터프라이즈급 애플리케이션에 적합

WordPress

블로그 및 CMS 개발에 최적화


7. 결론

PHP는 강력한 서버 사이드 언어로, 웹 개발에서 널리 사용됩니다.

HTML, 데이터베이스 연동, API 개발 가능

Laravel과 같은 프레임워크를 활용하면 더 강력한 웹 애플리케이션 구축 가능

PHP 8.x 버전에서는 성능과 기능이 대폭 개선됨

웹 개발을 시작하려면 직접 PHP 코드를 작성해보는 것이 가장 좋은 방법입니다.


댓글