지난 8월에 PHP 5.6이 발표되었습니다. 얼마전에 5.6.1 마이너 업데이트가 나오기도 하였는데 PHP 5.6에 추가되거나 변경된 주요 특징들에 대해서 PHP 5.6 릴리즈 노트를 통해 정리해보도록 하겠습니다.
1. 상수 선언에 표현식 지원
상수를 선언할때 변수처럼 표현식을 사용할 수 있게 되었습니다.
const CONSTANT = 'Hello World';
const ANOTHER_CONST = CONSTANT . '; Goodbye World';
2. 가변길이 인수에 대한 문법 추가
가변길이 인수에 사용되는 ... 연사자가 추가된 것인데 이건 아래 예제를 보시는 것이 이해가 빠르실 것 같습니다.
function sum(...$numbers) {
$acc = 0;
foreach ($numbers as $n) {
$acc += $n;
}
return $acc;
}
echo sum(1, 2, 3, 4);
기존에는 이런 함수에는 배열을 인수로 넘겼는데 ... 연산자를 사용해 같은 효과를 거둘 수가 있습니다. .. 연산자와 함께 type hint를 사용할 수도 있습니다.
이 연산자는 위 예제와는 반대로 아래 예제와 같이 인수로 배열을 넘기면 함수에서 이를 해체해 사용하는 형태로도 사용이 가능합니다.
function add($a, $b) {
return $a + $b;
}
echo add(...[1, 2])."\n";
3. 거듭제곱 연산자(**) 추가
4. use 키워드를 사용한 함수와 상수 임포팅
PHP에서 네임스페이스를 사용할때 사용되는 use 키워드에 특정 네임스페이스에 있는 함수와 상수를 임포트할 수 있는 기능이 추가되었습니다.
namespace Name\Space {
const FOO = 42;
function f() { echo __FUNCTION__."\n"; }
}
namespace {
use const Name\Space\FOO;
use function Name\Space\f;
echo FOO."\n";
f();
}
5. SAPI 모듈을 위한 새로운 phpdbg 디버거
6. php://input는 재사용이 가능하게 되었으며 $HTTP_RAW_POST_DATA는 폐기
7. GMP 객체에서 연산자 오버로딩 지원
8. 2 기가바이트 이상의 파일 업로드 지원
===
사진 포트폴리오 - City, City People (http://photo.just4fun.kr/)
사진 매거진 앱 - Viewzin (http://viewzin.just4fun.kr/)
사진 매거진 앱 - Viewzin (http://viewzin.just4fun.kr/)