2016-11-06 6 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" 
} 

である事の5.6サポートような種類をPHPではないでしょうか?

+0

をあなたもエラーを掲示場合には参考になります。 – BadZen

+0

ありがとう、編集 –

答えて

0

PHPのバージョン7以前では、 'string'やその他のプリミティブ型を型ヒントとして使用することはできません。PHP type-hinting to primitive values?を参照してください。

あなたはちょうどあなたが互換性が必要な場合は非typehintedバージョンを使用することができます。

<?php 

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

ありがとうございました。わかった 。 –