2014-02-21 60 views
0

我得到了這個問題,用我的PHP代碼。我正在構建一個FPDF腳本,應該在書中添加頁面。在代碼早期,Table Of Contents是定義的,並且訂單保存在類「public $pdf->order -array」中。該腳本答覆的有:PHP中的非法偏移類型(FPDF)

警告:非法偏移類型在/var/www/domain/labs/book/fpdf.php線573

這裏是我的代碼樹樁。

function GetPersons(){ 
    echo gettype($this->order); 
    foreach($this->order as $key => $val){ 
     $this->MakePage("Blahblahblah"); 
    } 
} 

$pdf->order被定義如下:

function MakeTOCChapter($cat, $lvl){ 
    $this->SetFont('Helvetica','',12); 
    $q = DB::query("SELECT name, id FROM paragraphs WHERE category=%i ORDER BY name ASC", $cat); 
    if(DB::count()) { 
     foreach($q as $r) { 
      $this->links[$r["id"]] = $this->AddLink(); 
      $this->Write(1,$lvl.$r["name"], $this->links[$r["id"]]); 
      $this->order[] = $r["id"]; 
      $this->Ln(5); 
     } 
    } 
    $this->SetFont('Helvetica','B',12); 
} 
+0

哪一行是573? –

+0

@JohannesH。我沒有在FPDF源代碼中進行編輯,但是它是'$ this-> links [$ link] = array($ page,$ y);' –

+0

如果你還沒有編輯它,那麼Exception的堆棧跟蹤對找出哪些代碼實際觸發了異常。 –

回答

0

錯誤是在腳本,即之前沒有扔錯誤的孔以外的部分。 FPDF已經使用$links,我的腳本基於FPDF類的自定義擴展。所以我重寫了它 - 但我不知道爲什麼錯誤沒有在之前拋出錯誤。

無論如何,它現在的作品;我將自己的$pdf->links更改爲$pdf->mylinks :)。