
PHP ์จ๋ผ์ธ ๊ฐ์
>PHP - ์ด๊ธ
๐ PHP ์ด๊ธ - 5์ฃผ์ฐจ: ํจ์ - 03 ๋ฐํ ๊ฐ
![]() |
ํ์ | 10.0 | ๋ผ์ด์ผ์ค | free |
---|---|---|---|---|
์ฌ์ฉ์ํ์ | 10.0 | ์ด์์ฒด์ | ||
๋ค์ด๋ก๋ | 1 | ํ์ผํฌ๊ธฐ | 0 | |
์ ์์ฌ | LUZENSOFT | ๋ฑ๋ก์ผ | 2025-06-28 17:27:56 | |
์กฐํ์ | 49 |
๐ PHP ์ด๊ธ - 5์ฃผ์ฐจ: ํจ์ - 03 ๋ฐํ ๊ฐ
์๋ ํ์ธ์! #PHP ์ด๊ธ ๊ฐ์ข 5์ฃผ์ฐจ ์ธ ๋ฒ์งธ ์๊ฐ์ ๋๋ค. ์ง๋ ๋ ์๊ฐ์๋ #ํจ์ ์ ์ ์, ํธ์ถ, ๊ทธ๋ฆฌ๊ณ #๋งค๊ฐ๋ณ์ ์ ํ์ฉ๋ฒ (๊ธฐ๋ณธ๊ฐ, ๊ฐ๋ณ ์ธ์)์ ๋ํด ์์๋ณด์์ต๋๋ค. ์ด๋ฒ ์๊ฐ์๋ ํจ์๊ฐ ์์ ์ ์ํํ ํ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํธ์ถํ ๊ณณ์ผ๋ก ๋๋๋ ค์ฃผ๋ ์ค์ํ ๊ธฐ๋ฅ์ธ ๋ฐํ ๊ฐ (Return Value) ์ ๋ํด ์์ธํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. ๋ฐํ ๊ฐ์ ๊ฐ๋
#ํจ์ ๋ ํน์ ์์
์ ์ํํ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ์์ ๋ฐ๋ผ ํจ์๋ฅผ ํธ์ถํ ์ฝ๋์๊ฒ ๋ค์ ์ ๋ฌํ ์ ์์ต๋๋ค. ์ด๋ ์ ๋ฌ๋๋ ๊ฐ์ ๋ฐํ ๊ฐ์ด๋ผ๊ณ ํฉ๋๋ค. return
ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ํจ์ ์คํ์ ์ข
๋ฃํ๊ณ , ์ํ๋ ๊ฐ์ ๋ฐํํ ์ ์์ต๋๋ค.
2. return
ํค์๋ ์ฌ์ฉ๋ฒ
ํจ์ ๋ด์์ return
ํค์๋๋ฅผ ๋ง๋๋ฉด, PHP๋ ๋ค์ ๋ ๊ฐ์ง ๋์์ ์ํํฉ๋๋ค.
ํจ์ ์คํ์ ์ฆ์ ์ข ๋ฃํฉ๋๋ค.
return
ํค์๋ ๋ค์ ๋ช ์๋ ๊ฐ(๋๋ ๋ณ์, ํํ์)์ ํจ์๋ฅผ ํธ์ถํ ๊ณณ์ผ๋ก ๋ฐํํฉ๋๋ค.
2.1. ๊ฐ์ ๋ฐํํ๋ ํจ์
๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ํํ์ ๋ฐํ ๊ฐ ์ฌ์ฉ๋ฒ์ ๋๋ค. ํจ์์ ๊ณ์ฐ ๊ฒฐ๊ณผ๋ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ํธ์ถํ๋ ์ชฝ์ ์ ๋ฌํฉ๋๋ค.
์์ 1: ์ซ์ ๋ ๊ฐ๋ฅผ ๋ํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ ํจ์
$result = addNumbers(5, 3); // ํจ์ ํธ์ถ ํ ๋ฐํ๋ ๊ฐ์ $result ๋ณ์์ ์ ์ฅ๋ฉ๋๋ค. echo "5 + 3 = " . $result . "
"; // ์ถ๋ ฅ: 5 + 3 = 8 ?>
์์ 2: ๋ฌธ์์ด์ ๊ฒฐํฉํ์ฌ ๋ฐํํ๋ ํจ์
$name = greet("๊น", "์ฒ ์"); echo "์๋ ํ์ธ์, " . $name . "๋!
"; // ์ถ๋ ฅ: ์๋ ํ์ธ์, ๊น ์ฒ ์๋! ?>
2.2. ํจ์ ์คํ์ ์ข
๋ฃํ๋ return
return
ํค์๋๋ ๊ฐ์ ๋ฐํํ๋ ์ญํ ์ธ์๋, ํ์ฌ ์คํ ์ค์ธ ํจ์๋ฅผ ์ฆ์ ์ข
๋ฃํ๋ ์ญํ ๋ ํฉ๋๋ค. return
๋ฌธ ๋ค์ ์ค๋ ์ฝ๋๋ ์คํ๋์ง ์์ต๋๋ค.
์์: ํน์ ์กฐ๊ฑด์์ ํจ์๋ฅผ ์ข ๋ฃํ๋ ๊ฒฝ์ฐ
"; return; // ์กฐ๊ฑด์ด ์ฐธ์ด๋ฉด ํจ์๋ฅผ ์ข ๋ฃํ๊ณ ์๋ฌด ๊ฐ๋ ๋ฐํํ์ง ์์ต๋๋ค. } echo $number . "๋ ์์์ ๋๋ค.
"; }
checkPositive(10); // ์ถ๋ ฅ: 10๋ ์์์ ๋๋ค. checkPositive(-5); // ์ถ๋ ฅ: ์์๊ฐ ์๋๋๋ค. (ํจ์ ์ข ๋ฃ) echo "ํจ์ ํธ์ถ ์๋ฃ
"; // ๋ ๊ฒฝ์ฐ ๋ชจ๋ ์ถ๋ ฅ๋ฉ๋๋ค. ?>
2.3. ์ฌ๋ฌ ๊ฐ์ ๊ฐ ๋ฐํ (๋ฐฐ์ด ๋๋ ๊ฐ์ฒด ํ์ฉ)
PHP ํจ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ํ๋์ ๊ฐ๋ง ๋ฐํํ ์ ์์ต๋๋ค. ํ์ง๋ง ์ฌ๋ฌ ๊ฐ์ ๊ฐ์ ๋ฐํํ๊ณ ์ถ๋ค๋ฉด ๋ฐฐ์ด์ด๋ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌถ์ด์ ๋ฐํํ ์ ์์ต๋๋ค.
์์ 1: ๋ฐฐ์ด์ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ๊ฐ ๋ฐํ
$userInfo = getUserInfo(); echo "์ด๋ฆ: " . $userInfo [0] . ", ๋์ด: " . $userInfo [1] . "์ธ, ๋์: " . $userInfo [2] . "
"; // ์ถ๋ ฅ: ์ด๋ฆ: ์ด์ํฌ, ๋์ด: 30์ธ, ๋์: ์์ธ
// list() ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๋ณ ๋ณ์๋ก ๋ฐ์ ์๋ ์์ต๋๋ค. list($name, $age, $city) = getUserInfo(); echo "์ด๋ฆ: " . $name . ", ๋์ด: " . $age . "์ธ, ๋์: " . $city . "
"; // ์ถ๋ ฅ: ์ด๋ฆ: ์ด์ํฌ, ๋์ด: 30์ธ, ๋์: ์์ธ ?>
์์ 2: ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ๊ฐ ๋ฐํ
name = "๋ ธํธ๋ถ"; $product->price = 1200000; $product->stock = 10; return $product; // ๊ฐ์ฒด๋ฅผ ๋ฐํ }
$productInfo = getProductDetails(); echo "์ ํ๋ช : " . $productInfo->name . ", ๊ฐ๊ฒฉ: " . $productInfo->price . "์, ์ฌ๊ณ : " . $productInfo->stock . "๊ฐ
"; // ์ถ๋ ฅ: ์ ํ๋ช : ๋ ธํธ๋ถ, ๊ฐ๊ฒฉ: 1200000์, ์ฌ๊ณ : 10๊ฐ ?>
3. ๋ฐํ ๊ฐ์ ํ์ ํํธ (Type Hinting for Return Values)
#PHP 7๋ถํฐ๋ ํจ์์ ๋ฐํ ๊ฐ์ ๊ธฐ๋๋๋ ๋ฐ์ดํฐ ํ์ ์ ๋ช ์ํ ์ ์๋ ํ์ ํํธ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ ์ฝ๋์ ์์ ์ฑ์ ๋์ด๊ณ , ๊ฐ๋ฐ ๊ณผ์ ์์ ์๊ธฐ์น ์์ ํ์ ๋ถ์ผ์น ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์์:
function calculateArea(int $width, int $height) : int { // ๋ฐํ ๊ฐ์ integer ํ์ ์ด์ด์ผ ํจ์ ๋ช ์ return $width * $height; }
echo "๋์ด: " . calculateArea(10, 5) . "
"; // ์ ์ ์ถ๋ ฅ: ๋์ด: 50
// ์๋ ์ฝ๋๋ ํ์ ๋ถ์ผ์น๋ก ์ธํด Fatal error ๋ฐ์ // echo "๋์ด: " . calculateArea(10.5, 5) . "
"; ?>
๊ฒฐ๋ก
์ด๋ฒ ์๊ฐ์๋ #PHP #ํจ์ ์ ํต์ฌ ๊ธฐ๋ฅ ์ค ํ๋์ธ ๋ฐํ ๊ฐ์ ๋ํด ์์ธํ ์์๋ณด์์ต๋๋ค. return
ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ํจ์๊ฐ ์ด๋ป๊ฒ ๊ฒฐ๊ณผ๋ฅผ ํธ์ถํ ๊ณณ์ผ๋ก ์ ๋ฌํ๊ณ , ํจ์ ์คํ์ ์ข
๋ฃํ๋์ง ์ดํดํ๋ ๊ฒ์ ํจ์จ์ ์ธ PHP ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ์ด์
๋๋ค. ๋ํ, ๋ฐฐ์ด์ด๋ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ๊ฐ์ ๋ฐํํ๊ฑฐ๋, ํ์
ํํธ๋ฅผ ํตํด ์ฝ๋์ ์์ ์ฑ์ ๋์ด๋ ๋ฐฉ๋ฒ๋ ์ตํ์ต๋๋ค. ์์ผ๋ก ํจ์๋ฅผ ์์ฑํ ๋ ๋ฐํ ๊ฐ์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ์ฌ ๋์ฑ ๊ฐ๋ ฅํ๊ณ ์ ์ฐํ ์ฝ๋๋ฅผ ๋ง๋ค์ด๋ณด์ธ์.