2015-03-26 2 views
-1

У меня есть некоторые проблемы с этим кодом. Предупреждение: Illegal тип смещения в строке 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

Вы передаете массив, а не индекс строки/целого числа в это слово $ this->.

//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-> word - это массив. Так что, вероятно, что-то не так с вашей логикой программы. Чтобы исправить это, используйте целое число или строку для доступа к элементам массива.

+0

Просто столкнулся с этой проблемой, когда понял, что SimpleXML всегда возвращает объект, а не строку ... – Soaku

Смежные вопросы