2011-12-29 33 views
1

我得到這個錯誤:爲什麼我用這個PHP代碼得到一個「只能通過引用分配變量」的錯誤?

Only variables should be assigned by reference

在這條線:

$sum = &self::genchksum10($isbn); 
我的功能

public function validateten($isbn) { 
     $isbn = trim($isbn); 
     $chksum = substr($isbn, -1, 1); 
     $isbn = substr($isbn, 0, -1); 
     if (preg_match('/X/i', $chksum)) { $chksum="10"; } 
     $sum = &self::genchksum10($isbn); 
     if ($chksum == $sum){ 
      return 1; 
     }else{ 
      return 0; 
     } 
    } 

我真的不知道有什麼不妥的地方。任何幫助將不勝感激。

+0

'&'的目的是什麼? – 2013-05-28 21:29:27

回答

4

對象不能用引用引用自身(&)。

嘗試沒有它:

$sum = self::genchksum10($isbn); 
0

您正在試圖創建一個函數的結果的參考。這在PHP中是不可能的。

只要刪除&