PHP Function


4. 함수 (Functions)

함수 정의 및 호출 (Defining and Calling Functions)

PHP에서 함수는 function 키워드를 사용하여 정의합니다. 함수는 특정 작업을 수행하는 코드 블록이며, 필요할 때 호출할 수 있습니다.

function sayHello() {
    echo "Hello, World!";
}

sayHello(); // 함수 호출

매개변수와 반환값 (Parameters and Return Values)

함수는 매개변수를 통해 데이터를 전달받을 수 있으며, return 키워드를 사용하여 값을 반환할 수 있습니다.

매개변수 (Parameters)
function greet($name) {
    echo "Hello, $name!";
}

greet("Alice"); // 출력: Hello, Alice!
반환값 (Return Values)
function add($a, $b) {
    return $a + $b;
}

$result = add(3, 4); // $result는 7
echo $result;

변수 범위 (Variable Scope)

지역 변수 (Local Variables)

함수 내에서 정의된 변수는 해당 함수 내에서만 유효합니다.

function test() {
    $localVar = "I am local";
    echo $localVar;
}

test(); // 출력: I am local
// echo $localVar; // 오류: 변수 범위 밖에서 접근
전역 변수 (Global Variables)

함수 외부에서 정의된 변수는 전역 변수입니다. 함수 내에서 전역 변수를 사용하려면 global 키워드를 사용합니다.

$globalVar = "I am global";

function testGlobal() {
    global $globalVar;
    echo $globalVar;
}

testGlobal(); // 출력: I am global

익명 함수 및 클로저 (Anonymous Functions and Closures)

익명 함수 (Anonymous Functions)

익명 함수는 이름이 없는 함수입니다. 변수에 할당하거나 콜백으로 사용할 수 있습니다.

$greet = function($name) {
    echo "Hello, $name!";
};

$greet("Bob"); // 출력: Hello, Bob!
클로저 (Closures)

클로저는 자신이 정의된 범위 밖의 변수에 접근할 수 있는 익명 함수입니다. use 키워드를 사용하여 외부 변수를 가져올 수 있습니다.

$message = "Hello, World!";

$closure = function() use ($message) {
    echo $message;
};

$closure(); // 출력: Hello, World!

위 예제에서는 익명 함수가 $message 변수에 접근할 수 있도록 use 키워드를 사용하였습니다. 클로저는 주로 콜백 함수나 특정 범위 내의 데이터를 캡슐화할 때 유용합니다.


Leave a Reply

Your email address will not be published. Required fields are marked *