问题是动态配置数组

时间:2013-07-16 08:51:25

标签: php associative-array

我有一个脚本但在此之前我想解释一下

我正在调用一个函数

$data['cat'] = $this->autoload_model->getTree(0,'td_category');
$data['cat'] = $this->autoload_model->getTree(0,'td_division');

所以在下面的函数中

$table = td_category
                         $table = td_division


public function getTree($pid,$table)
    {
        $table_data=explode("_",$table);
        //$table_data[1] will read category for td_category, division for td_division;
        global $sp;
        static $arr = array(
               'category_id' => array(),
               'category_title' => array()
            );
    }

现在如果我替换这两行

'category_id' => array(),
    'category_title' => array()

通过

$table_data[1].'_id' => array(),
    $table_data[1].'_title' => array()

然后由于数组的静态性质我得到错误, 但如果我删除静态关键字,那么它不会显示任何错误

如何保持静态keywod并根据发送的$ table动态获取关联字段

2 个答案:

答案 0 :(得分:1)

我不太确定,但你可以试试

static $arr = array();

$arr[$table_data[1].'_id'] = array();
$arr[$table_data[1].'_title'] = array();

答案 1 :(得分:-2)

你的意思是这样的吗?

${$table_data[1]."_title"} => array();