728x90
1. function func1(array $parameter) {}
2. function func2($parameter = []) {}
함수에 매개변수 중에 저렇게 생긴 게 종종 보입니다.
1번은 해당 매개변수에 대한 설명? 힌트? 그런 것입니다.
- 값을 필수로 무조건 넣어야 하기에 기본값이라고 하긴 좀 그렇습니다. 그래서 기본값은 없다고 보시는 게 맞겠습니다.
- 언급했듯이 매개변수는 필수로 넣어야 합니다.
2번도 해당 매개변수에 대한 힌트를 주는 것입니다.
- 매개변수가 필수는 아닙니다.
- 배열인 것처럼 되어 있지만 실제로는 다른 타입의 값을 넣어도 됩니다.
- 값을 넣지 않아도 빈 배열([])이 들어갑니다. 즉 기본값은 빈 배열입니다.
넘어오는 매개변수를 체크도 하고 값을 넣지 않아도 되게 하려면 아래처럼 하시면 됩니다.
function func3(array $parameter = []) {}
참고로 $parameter = [] 이거나 $parameter = array()는 같은 의미입니다. 전자는 php 5.4 이상부터 사용 가능한 짧은 문법이고 후자는 아무 버전에서나 써도 되는 문법입니다.
반응형
'Programming > PHP' 카테고리의 다른 글
select box로 시간, 분 만들기 (0) | 2021.03.30 |
---|---|
현재 자신의 계정 내에 설치된 TLS 버전 확인 (0) | 2021.02.24 |
[Codeigniter]디비 관리(dbforge), enum 타입 추가 (0) | 2021.01.21 |
쿼리스트링을 배열로... (0) | 2021.01.08 |
주말 제외 날짜 계산(excluding weekend) (0) | 2020.12.21 |