2016-11-06 1 views
1

내 코드는 여기문자열 ..params 5

<?php 

     select("id","name"); 
     function select(string ...$value){ 
     var_dump($value);   
    } 

입니다 PHP에서 작동하지 않습니다하지만 그것은 단지 PHP는 7 일 일하고있어. PHP 5.6에서 작업 할 때, 이렇게 치명적인 오류가 발생했습니다. 내가 PHP를 7 시스템에서 작업 할 때

Catchable fatal error: Argument 1 passed to select() must be an instance of string, string given, called in [...][...] on line 2 and defined in [...][...]</b> on line 3 

출력은

array(2) { 
    [0]=> 
    string(2) "id" 
    [1]=> 
    string(4) "name" 
} 

물건의 5.6 지원과 같은 종류의 PHP로하지 않습니다입니까?

+0

그것은 도움이 될 것입니다. – BadZen

+0

감사합니다, 편집 됨 –

답변

0

PHP 버전에서 'string'또는 다른 기본 유형을 PHP 이전 버전의 유형 힌트로 사용할 수 없습니다. PHP type-hinting to primitive values?을 참조하십시오.

호환성 필요한 경우 그냥 비 typehinted 버전을 사용할 수 있습니다 : 당신은 또한 오류를 게시하는 경우

<?php 

     select("id","name"); 
     function select(...$value){ 
     var_dump($value);   
    } 
+0

감사합니다. Badzen. 알았다. –