Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将函数返回值设置为公共/静态变量_Php_Mysql - Fatal编程技术网

Php 将函数返回值设置为公共/静态变量

Php 将函数返回值设置为公共/静态变量,php,mysql,Php,Mysql,学生表包含: 身份证件 名字 姓氏 函数get_db_fields获取学生表字段 class Student{ public function get_db_fields(){ $sql = "SELECT * FROM students"; $result = mysql_query($sql); if(!$result){ die("Failed :" . mysql_error()); }

学生表包含: 身份证件 名字 姓氏

函数get_db_fields获取学生表字段

class Student{

public function get_db_fields(){
        $sql = "SELECT * FROM students";
        $result = mysql_query($sql);
        if(!$result){
         die("Failed :" . mysql_error());
        }
        $db_fields = array();
        while($field = mysql_fetch_field($result)){
           $db_fields[] = "'".$field->name."'";
        }
        return join(',',$db_fields);
    }

    public $db_fields = array($this->get_db_fields()); <--- This is not working

}

错误:解析错误:语法错误,第33行的C:\Program Files\xampp\htdocs\ieti\includes\student.php中出现意外的T_变量创建构造函数,并将
get_db_fields
返回的值分配给成员变量
db_fields
。成员变量只能用编译时计算的值初始化

2.) $database_fields = $this->get_db_fields();
class Student{

  public $db_fields;

  public function __construct() {
    $this->db_fields = $this->get_db_fields();
  }

// Rest of your code
在这里使用“数组”是不对的,应该是

public $db_fields =$this->get_db_fields();
第二,类有用于此的构造函数

所以


此外,现在不鼓励使用mysql_查询,如果您正在使用面向对象的查询,请使用PDO

创建一个构造函数,并将
get_db_fields
返回的值分配给成员变量
db_fields
public $db_fields = array($this->get_db_fields());
public $db_fields =$this->get_db_fields();
public function __construct(){
$this->db_fields = $this->get_db_fields();
}