2017-03-07 80 views
-1
Fatal error: Cannot redeclare Patchwork\redefine() 

我確定這是StackOverflow中最常見的問題之一,下面的解決方案可以在SO中的幾個帖子中找到。致命錯誤的解決方案:無法重新聲明功能

if (!function_exists('view')) { 
    function view() 
    { 
     //your code here 
    } 
} 

,或者您可以使用

include_once() or require_once() 

我的問題: 我開發一個CMS的一個插件,使用第三方庫。 CMS有另一個開發人員使用我使用的相同庫開發的另一個插件。

由於2個相同的類/函數聲明,我得到了致命的錯誤。

在我看來,編輯第三方庫使用function_exists檢查所有函數不是一種友好的方法。

有什麼辦法解決這個問題嗎?

+0

那麼你可以把你的函數叫做'redefine()'在不同的命名空間中,儘管這樣做使得邏輯意義很難從你的問題中的信息中知道 – RiggsFolly

+0

我曾經想過。庫更新時,與名稱空間相關的更改將會丟失。 – Purus

回答

0

那麼,Patchwork庫的所有者已經更新了他的庫以避免這些問題。

因此,目前問題已關閉。

相關問題