함수 규칙
-
함수의 이름은 문자와 숫자, 언더스코어(_)만 사용할 수 있습니다.
-
함수의 이름은 숫자로 시작할 수 없습니다.
-
여러 함수가 같은 이름을 사용할 수는 없습니다.
- PHP에서 함수 이름은 대소문자를 구별하지 않지만, 선언한 그대로 호출하는 것이 좋다.
1 | |
위의 예제처럼 declare 문을 사용하여 strict 모드를 설정 가능
PHP 7부터 제공되는 strict 모드는 지금까지의 자동 변환으로 느슨하게 처리되던 타입 검사를 엄격하게 수행하도록 변경
strict 모드에서는 해당 위치에 나올 수 있는 적절한 타입 이외의 값이 나올 경우 타입 변환을 하지 않고 오류를 발생
파라미터
1. 값 전달 방식(passing by value)
- 함수 안에서 변경되어도 함수 밖의 원본 데이터에는 영향을 주지 않습니다.
1 | |
2.참조 전달(passing by reference)
- 함수 내부에서 값을 변경하면, 함수 밖의 원본 데이터도 같이 바뀌게 된다.
1 | |
&을 붙여 사용하면 된다.
3.디폴트 매개변수
파라미터가 전달 받지 못하게 되는 경우 사용되는 변수의 값
1 | |
4.가변 길이 인수 목록
함수를 선언할 때 전달받을 인수의 개수를 미리 정하지 않고, 호출할 때마다 유동적으로 인수를 넘기는 기능
1 | |
조건적 함수
특정 조건이 되면 선언되는 함수
1 | |
함수안의 함수(function within function)
PHP에서 모든 함수는 전역 함수이므로, 함수 내부에서 선언된 함수라도 해당 함수 외부에서 호출할 수 있다.
1 | |
재귀 함수(recursive function)
재귀 호출을 중단하도록 조건이 변경될 명령문을 반드시 포함
1 | |
가변 함수(variable function)
PHP에서는 변수 이름에 괄호(())를 붙이면, 해당 변수의 값과 같은 이름을 가지는 함수를 호출
1 | |