我有一个基本控制器,它有基本方法
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class MY_Championship extends CI_Controller {
protected $championship_id;
public function __construct($_championship_id)
{
parent::__construct();
$championship_id = $_championship_id;
}
public function results($page)
{
//Some code here
}
}
当我尝试在另一个控制器中实现My_Championship类时,即使我在构造函数中传递参数'1',输出也是空的
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require_once("application/core/MY_Championship.php");
class Eurobasket2017 extends MY_Championship {
public function __construct()
{
parent::__construct(1);
file_put_contents("test.txt", $this->championship_id);
}
}
主要的问题是,根据我给构造函数的哪个参数,它会更改数据库中的记录:例如,如果我给参数1加载eurobasket游戏,如果我给参数2它加载nba游戏等等。
MY_Championship类构造函数不会更新自己的实例championship_id属性
更改
$championship_id = $_championship_id;
成
$this->championship_id = $_championship_id;
如果你不这样做,那么一旦父构造函数完成,$ championship_id var就会丢失。