기본 콘텐츠로 건너뛰기

PHP 5.6의 주요 특징



지난 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/)



댓글

이 블로그의 인기 게시물

구글 결제에서 결제 수단 등록 문제

얼마 전 카드를 새로 만들어서 구글 결제의 결제 수단을 교체하려고 하였는데 카드 번호가 잘못되었다라고 하면서 등록이 되지 않았습니다. 관련해서 검색을 해보니 이런 문제가 흔히 발생하고 있더군요. 저처럼 당황하실 분들을 위해 구글 고객센터와 통화해 해결하면서 알아낸 것들을 공유하겠습니다.

플랜트로닉스 백비트 고 3 : 아쉬운 블루투스 연결 안정성

블루투스 이어폰을 새로 구입하려고 이것저것 알아보다가 기존에 사용하던 플랜트로닉스의 ‘백비트 고 2’에 만족을 하였기에 그 후속작인 ‘백비트 고 3’를 구입하였습니다. 구입 후 일주일정도 사용한 지금 기대보다는 만족도가 떨어지는 제품이라는 것이 제 결론인데 그 이유를 적어보겠습니다.

PHP에서 보안 문제를 해결하는 법

한빛미디어 홈페이지에 'PHP에서 보안 문제를 해결하는 법' 이라는 기사가 있습니다. PHP로 개발시 주의해야하는 3가지 보안 문제와 이를 막는 방법에 대한 외국 기사를 번역한 기사인데 관련 사항을 잘모르시는 분들에게 도움이 될 것 같아 기사에 소개된 내용들에 제 생각을 추가하여 정리해보겠습니다.