함수 선언(prototype)을 읽는 방법

각 함수는 퀵 레퍼런스를 위해 문서화되어있다. 매뉴얼을 읽고 이해하는 방법을 아는 것은 PHP 사용을 더욱 쉽게 해줄것이다. 예제코드나 cut/paster에 의지하기 보다는, 함수 선언(prototypes)을 읽는 방법을 알고 싶을 것이다. 시작하자:

필수 조건: 타입에 대한 기본적인 이해: PHP가 느슨한 타입 언어임에도 불구하고, 타입의 기본적인 이해는 중요하다. 왜냐하면 타입은 중요한 의미를 내포하기 때문이다.

함수 선언은 어떤 타입의 값이 returned되는지 알려준다. 첫번째 예제로써 strlen()에 대한 선언을 보도록하자:

strlen

(PHP 3, PHP 4 >= 4.0.0)
strlen -- Get string length

Description
int strlen ( string str )

Returns the length of string.

표 O-1. 함수 선언 해설

PartDescription
strlen The function name.
(PHP 3, PHP 4 >= 4.0.0) strlen()는 PHP 3와 PHP 4 모두 사용가능하다
int 이함수가 리턴하는 값의 타입은 integer이다. (즉, 문자열의 길이가 숫자로 측정된다)
( string str ) 함수 strlen()에 대한 첫번째 (이경우에는 하나이다) 패러미터/인자는 str이라는 이름을 갖고, string이다.

위 함수 선언을 일반적인 방법으로 다시 작성할수 있다:

returned type    function name    ( parameter type   parameter name )

in_array()와 같이, 많은 함수는 여러 패러미터를 갖는다. 프로토타입은 다음과 같다:

bool in_array ( mixed needle, array haystack [, bool strict])

이 선언은 무엇을 의미할까? in_array() boolean값을 리턴한다. 성공하면 TRUE (needlehaystack에서 발견됨) 실패하면 FALSE (needlehaystack에서 찾을수 없슴) 첫번째 패러미터는 needle이라는 이름을 갖고 있고 여러가지 다양한 타입이 될수 있다. 따라서 이런 타입을 "mixed"라고 부른다. mixed needle(찾는것)는 스칼라 값( string, integer, 또는 float)이나 array가 될수 있다. haystack (검색하는 배열)은 두번째 패러미터이다. 세번째 optional 패러미터는 strict라는 이름을 갖는다. 그외 추가적인 패러미터는 [ brackets ]안에 보여진다. 매뉴얼에서는 strict 패러미터가 기본값으로 boolean FALSE라고 되어있다. 각 함수의 어떻게 동작하는지에 대한 자세한 설명은 매뉴얼 패이지를 보도록 한다.