2016-11-06 70 views
1

我的代碼是在這裏字符串..params不是PHP工作5

<?php 

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

但它只是工作PHP 7。當我在PHP 5.6機器上工作時,我得到了這樣的致命錯誤。

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 

當我的PHP 7機器上工作的輸出是

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

難道不是PHP 5.6支持這類的事情?

+0

這將是有益的,如果你還張貼了錯誤。 – BadZen

+0

謝謝,編輯 –

回答

0

在7之前的PHP版本中,不能使用'string'或任何其他基元類型作爲輸入提示。請參閱PHP type-hinting to primitive values?

您可以只使用非typehinted版本,如果你需要的兼容性:

<?php 

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

謝謝巴德岑。我知道了 。 –