PHP变量变异。传递给函数的数组变为1

时间:2010-05-16 04:28:45

标签: php

函数调用:

 $trdata .= $this->table_td($tddata, 1, $td);

功能:

public function table_td($data = '', $parameters = array()){
    return($this->table_thtd($data, 0, $parameters));
}

返回前的print_r显示1,而不是我传递的数据数组。有关正在发生的事情的任何想法?

2 个答案:

答案 0 :(得分:5)

你将1作为第二个参数传递给函数调用,你的$parameters参数是函数定义中的第二个参数...你期望什么?

答案 1 :(得分:1)

双参数函数:

public function table_td(
    $data = '',            # one
    $parameters = array()  # two
) { ... }

三参数函数调用:

$trdata .= $this->table_td(
    $tddata,              # one
    1,                    # two
    $td                   # three
);

嗯。你想知道为什么第二个参数($parameters)被设置为第二个参数(1)?