警告:非法偏移类型

时间:2015-03-26 23:54:31

标签: php arrays class offset

我的代码有问题。警告:第22行中的非法偏移类型

$this->word[$kata][]=array($i,$j);

,完整代码在

之下
private $jmldoc = 0; private $word = array();

public function getIndex($D) {
    $this->jmldoc = count($D);

    for($i=0; $i<$this->jmldoc; $i++) {
        $pp = new prePro($D[$i]);
        $kata = $pp->tokenize();
        $n = count($kata); 
        for($j=0; $j<$n; $j++) {
            $this->word[$kata]=array($i,$j);
        }
    }
}

你能帮我解决一下吗?

1 个答案:

答案 0 :(得分:1)

您正在向$ this-&gt;字传递数组,而不是字符串/整数索引。

    //I suppose from the context of your code that $kata is an array also
    //so if that's true, it can't be used as an index
    $this->word[$kata][]=array($i,$j);

请注意,$ this-&gt; word是一个数组。所以可能你的程序逻辑有问题。要解决此问题,请使用整数或字符串来访问数组的元素。