【问题标题】:String ..params not working on PHP 5字符串 ..params 不适用于 PHP 5
【发布时间】:2016-11-06 05:29:54
【问题描述】:

我的代码在这里

<?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 不支持这种东西吗?

【问题讨论】:

  • 如果您也发布错误会有所帮助。

标签: php arrays string


【解决方案1】:

在 7 之前的 PHP 版本中,您不能使用 'string' 或任何其他原始类型作为类型提示。请参阅 PHP type-hinting to primitive values?

如果你需要兼容性,你可以只使用非类型提示的版本:

  <?php

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

【讨论】:

  • 谢谢巴岑。我明白了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-17
  • 2017-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多