본문 바로가기

php

[PHP] 타입 힌팅(Type Hinting) - 함수 인자와 반환 값의 형 지정하기 인자 형 지정하기 다음과 같이 인자에 데이터 형을 지정해주면 지정한 데이터 형으로 변환하여 처리합니다. 즉, 인자로 string 타입의 숫자를 넣어도 함수에서는 int형으로 처리합니다. 반환 값의 형 지정하기 다음과 같이 사용하면 결과를 지정한 데이터 형으로 변환하여 반환합니다. 즉, 함수 안에서는 string 타입으로 처리하지만 반환 시에는 int로 처리합니다. 더보기
[PHP] 가변 길이 인수 - 함수에 여러 인자 받기 가끔 함수를 처리하다보면 받을 인자의 개수를 모를 때가 있습니다. PHP는 가변 길이 인수 목록을 지원합니다. 사용법 PHP 5.6 이상은 '...'을 PHP 5.5 이하에서는 func_num_args(), func_get_arg() 또는 func_get_args()를 사용하면 됩니다. 함수 반환 func_get_args() 모든 목록 배열 반환 func_num_args() 인수 개수 반환 func_get_arg( int $index) 인수 항목 반환 더보기
[PHP] rand() vs mt_rand() - 난수 생성하기 rand()와 mt_rand()의 차이 PHP에서 난수를 생성할 수 있는 함수는 rand()와 mt_rand()가 있습니다. 그 중 mt_rand()는 rand()가 제공하는 것보다 4배 빠르게 난수를 생성합니다. ※ 출처 - www.php.net/manual/en/function.mt-rand.php mt_rand() 사용하기 int mt_rand(int $min=0, int $max=mt_getrandmax()) 정수형으로 인자를 받으며 정수형으로 반환을 합니다. 첫 번째 인자에는 최소값이 두 번째 인자에는 최대값이 들어갑니다. 디폴트 값으로는 첫 번째 인자에는 '0' 두 번째 인자에는 반환할 수 있는 최대 값을 반환합니다. /**********출력************ 15 12 8 3 1 ****.. 더보기
[PHP] 제너레이터(Generator) - yield, yield from 제너레이터(Generator) 제너레이터는 함수 실행을 일시정지하고 다시 멈췄던 부분부터 실행할 수 있습니다. yield 일반적인 yield의 사용 형태는 반복하는 코드에 yield 키워드가 사용된 함수 실행을 중지하고 값을 제공합니다. 쉽게 말해 yield 키워드가 사용된 함수 실행을 일시 중지한다는 점을 제외하면 return 키워드와 유사합니다. yield from 'yield from'은 모든 값을 출력하고 그 후 외부 제너레이터에서 실행이 계속됩니다. 즉, 'yield from'을 사용하여 내부 yield 값을 일시정지하지 않고 모두 출력합니다. 더보기
[PHP] @(골뱅이) 의미 @의 키워드는 PHP 에러 메시지를 무시합니다. 다음과 코드를 실행하게 되면 'PHP Notice: Undefined variable: [파일명] in [파일 위치] on line [오류 라인]'과 같은 오류 메시지를 출력합니다. 그러나, 다음과 같이 @ 키워드를 사용한다면 오류 메시지를 출력하지 않습니다. 더보기
[PHP] 연산자 우선순위 순위 연산자 설명 결합 1 clone, new 객체 복사, 생성 X 2 ** 거듭제곱 오른쪽 3 ++, --, ~, (int), (float), (string), (array), (object), (bool), @ 증가, 감소, 형변환, 1의 보수, 에러 메시지 무시 오른쪽 4 instanceof 유형 연산자 X 5 ! 부정 오른쪽 6 *, /, % 곱하기, 나누기, 나머지 왼쪽 7 +, -, . 더하기, 빼기, 연결 왼쪽 8 Left, Right Shift 왼쪽 9 더보기
[PHP] 유형 연산자 - instacnof 'instanceof'는 변수가 지정한 클래스의 인스턴스인지 조사하는 유형 연산자입니다. 즉, 한 객체가 특정 클래스인지 확인하기 위해서 사용합니다. 반환값은 boolean(불리언)입니다. class Foo { public $foobar = 'Foo'; public function test() { echo $this->foobar . "\n"; } } class Bar extends Foo { public $foobar = 'Bar'; } $a = new Foo(); $b = new Bar(); $a->test(); // Foo $b->test(); // Bar var_dump($a instanceof Foo); // bool(true) var_dump($b instanceof Foo); // bool(.. 더보기
[PHP] 논리 연산자 - 'and'와 'or' 그리고 '&&'와 '||'연산자 논리곱을 사용할 때는 'and' 혹은 '&&'를 사용합니다. 논리합을 사용할 떄는 'or' 혹은 '||'을 사용합니다. 연산자 우선순위 주의할 점은 연산자 우선순위입니다. '&&'와 '||'의 연산자는 '='(대입 연산자) 보다 우선순위가 높기 때문에 크게 문제가 되지 않습니다. 하지만, 'and'와 'or' 연산자는 '='(대입 연산자) 보다 우선순위가 낮기 때문에 괄호로 묶어 사용하는 것을 권고합니다. 더보기

반응형