이전 연구에서는 var_dump와 많은 배열 함수 등 많은 함수를 사용했습니다. 그 특징은 무엇입니까?
1. 모두 특정 기능을 수행할 수 있습니다.
2. 모두 특수한 이름을 갖습니다.
3. 모두 더 많거나 적은 매개변수를 갖습니다.
4. 대부분의 기능 반환 값을 가지며 그렇지 않더라도 특정 작업을 수행합니다
5. 함수의 내부 구현 논리를 알 필요가 없습니다
함수는 대부분의 프로그래밍 언어에 존재합니다. 독립적이고 잘 정의된 작업을 수행하는 코드를 분리하는 데 사용됩니다.
함수 이름은 문자나 밑줄로 시작해야 하며 그 뒤에 문자, 숫자, 밑줄이 와야 합니다. 또한 함수 이름은 대소문자를 구분하지 않습니다.
PHP의 진정한 힘은 함수에서 나옵니다.
PHP에는 1000개 이상의 내장 함수가 제공됩니다.
PHP 내장 함수
전체 참조 매뉴얼과 모든 배열 기능의 예를 보려면 PHP 참조 매뉴얼을 방문하세요.
PHP 함수
이전에 호출한 것은 모두 PHP 내장 함수였지만 실제 프로젝트에서는 대부분 기본 함수였습니다. , 우리의 요구를 충족시킬 수 없습니다. 따라서 우리는 PHP 내장 함수에만 국한되지 않고 모든 작업을 수행하기 위해 자체 함수를 작성할 수 있습니다.
이 장에서는 자신만의 함수를 만드는 방법을 설명합니다.
페이지가 로드될 때 스크립트를 실행하려면 이를 함수에 넣을 수 있습니다.
함수는 함수를 호출하여 실행됩니다.
페이지 어디에서나 함수를 호출할 수 있습니다.
PHP 함수 만들기
함수는 함수를 호출하여 실행됩니다.
함수 함수명 ([매개변수 이름 1 [= 값 1], 매개변수 이름 2 [= 값 2], 매개변수 이름 n [= 값 n]])
{
함수
[반환 반환 값]
}의 함수 본문(코드/문)
설명:
1 .함수는 함수
로 시작합니다. 2. 함수 뒤에는 공백이 오고, 공백 뒤에는 함수 이름이 옵니다.
3. 함수 이름과 변수의 명명 규칙은 기본적으로 동일합니다. , 차이점은 함수 이름이 대문자와 소문자를 구분하지 않는다는 것입니다
4. 소위 매개 변수는 실제로 변수입니다
5. 함수 이름 뒤에는 괄호가 있고 매개 변수는 다음과 같습니다. 모든 매개변수는 [](대괄호)로 묶여 있습니다.
을 선택적으로 입력할 수 있습니다. 매개변수 뒤에는 등호( =), 등호 뒤에는 기본값이 옵니다. 매개변수 값도 [](대괄호)로 묶어 선택적
을 나타냅니다. 7. 함수 뒤의 매개변수 변수의 주요 기능은 함수 외부의 변수 값을 함수 본체에 전달하는 것입니다. 함수 본체 함수 외부의 변수와 함수 외부의 변수는 일반적으로 서로 다른 두 개의 변수입니다.
8. 함수의 특정 함수(함수 본문)는 중괄호로 묶여 있습니다. 이는 함수의 함수 범위임을 의미합니다.
9. 여부. [](대괄호)로 묶인 항목은 선택적 필드를 나타냅니다.
10. Return 뒤에는 공백이 오고, 공백 뒤에는 반환값이 옵니다. 반환값이 있는 경우 반환 뒤의 코드는 실행되지 않습니다.
11. 함수의 실행은 순차적 관계가 없으며 정의 이전 위치에서 호출할 수 있습니다
12. 함수는 두 번 정의할 수 없습니다. 즉, 함수는 오버로드될 수 없습니다
간단한 예:
호출 시 내 이름을 인쇄하는 간단한 함수:
<html> <body> <?php function writeName() { echo "Kai Jim Refsnes"; } echo "My name is "; writeName(); ?> </body> </html>
출력:
내 이름은 Kai Jim Refsnes입니다
PHP 함수 - 매개변수 추가
함수에 더 많은 기능을 추가하기 위해 매개변수를 추가할 수 있습니다. 매개변수는 변수와 같습니다.
매개변수는 함수 이름 바로 뒤에 괄호 안에 지정됩니다.
예 1
다음 예에서는 이름은 다르지만 성은 동일하게 출력합니다.
<html> <body> <?php function writeName($fname) { echo $fname . "Refsnes.<br>"; } echo "My name is"; writeName("Kai Jim"); echo "My sister's name is"; writeName("Hege"); echo "My brother's name is"; writeName("Stale"); ?> </body> </html>
출력:
내 이름은 다음과 같습니다. Kai Jim Refsnes.
제 여동생 이름은 Hege Refsnes입니다.
제 동생 이름은 Stale Refsnes입니다.
예제 2
다음 함수에는 두 개의 매개 변수가 있습니다.
<html> <body> <?php function writeName($fname,$punctuation) { echo $fname . "Refsnes" . $punctuation . "<br>"; } echo "My name is"; writeName("Kai Jim","."); echo "My sister's name is"; writeName("Hege","!"); echo "My brother's name is"; writeName("Ståle","?"); ?> </body> </html>
출력:
제 이름은 Kai Jim Refsnes입니다.
제 여동생의 이름은 Hege Refsnes입니다!
제 동생의 이름은 Ståle Refsnes인가요?
PHP 함수- Return value
함수가 값을 반환하도록 하려면 return 문을 사용하세요.
인스턴스
<html> <body> <?php function add($x,$y) { $total=$x+$y; return $total; } echo "1 + 16 =" . add(1,16); ?> </body> </html>
출력:
1 + 16 = 17
함수 기본값
함수 구문을 떠올려 보면, 약간만 수정하고 두 번째 매개변수 뒤에 등호를 추가하고 값을 할당하면 매개변수 2가 기본값을 갖게 됩니다. 함수를 호출할 때 하나만 전달하면 됩니다. 매개변수 1
함수 함수 이름([매개변수 1, 매개변수 2 = 2)
{
함수 내 함수 본문(코드/문)
[반환값]
}
함수:
오랜 기간 동안 사용되어 여기저기서 호출되는 시스템 함수가 있다고 가정해 보겠습니다. 새로운 로직을 추가해야 한다면, 매개변수에 새 기능을 추가해야 할 가능성이 높습니다. 새 매개변수가 추가되고 함수 정의가 변경되면 이 매개변수를 수정하고 추가할 각 호출 위치를 찾아야 합니다. 기본값을 주면 어떻게 될까요? 기본값은 새 로직의 닫기를 제어하는 데 사용되므로 원래 코드를 수정할 필요가 없고 새 로직이 실행되지 않는 반면 새 코드는 매개변수를 명시적으로 지정하여 새 로직을 열 수 있습니다.
예제
<html> <body> <?php function add($x,$y = 10) { $total=$x+$y; return $total; } echo "1 + 10 =" . add(1); ?> </body> </html>
위의 예에서 볼 수 있듯이 함수 뒤의 매개변수에 기본값이 있으면 기본값이 나타내는 매개변수를 전달할 필요가 없습니다.
예: echo "1 + 10 = " . add(1)은 값 1을 $x에 전달합니다.