为什么我不能在类中声明字符串的私有静态数组?

时间:2019-04-08 21:08:47

标签: php oop

我正在尝试在类中的函数中返回字符串数组

当我尝试使用私有静态数组时,它返回以下错误:

  

致命错误:第17行的/home/developer/projects/api/src/public/Sql.php中的常量表达式包含无效操作

这是我的班级

<?php

namespace App;

/**
* Class Sql
*
* @return (Array) (Strings)
*/

Class Sql {
  private static $columns = (implode(",", array('product_id','model','viewed','ups','downs','location','price','quantity')));

  public function getColumns() {
    echo "<pre>";
    print_r(self::$columns);
    echo "</pre>";
    exit();
  }
}

语法是否存在问题,或者我在做我不应该做的事情?

正确的做法是什么?

1 个答案:

答案 0 :(得分:0)

尝试

private static $columns = ['product_id','model','viewed','ups',
                           'downs','location','price','quantity'];

我仍然看不到为什么要使用implode,因为那样只会导致$columns是一个字符串(它将“胶粘”在单个字符串中:{{1 }}。