簡體   English   中英

CakePhp中嚴格的標准錯誤?

[英]Strict Standards Error in CakePhp?

我正在使用xampp v3.1.0 3.1.0和cakephp 1.2.10,但我有這兩個錯誤。

嚴格標准:在第62行的E:\\ xampp \\ htdocs \\ projectname \\ cake \\ libs \\ object.php中重新定義類Object的已定義構造函數

嚴格標准:非靜態方法不應在第46行的E:\\ xampp \\ htdocs \\ projectname \\ cake \\ bootstrap.php中靜態調用Configure :: getInstance()

提前致謝

E_STRICT警告是警告,而不是錯誤 - 知道問題是PHP 5.4+特定

E_STRICT(整數)

允許PHP建議對代碼進行更改,以確保代碼的最佳互操作性和向前兼容性。

從PHP 5開始, 但直到PHP 5.4.0才包含在E_ALL中

你可以忽略它們(在采取措施阻止用戶看到它們之后)。

您可以使用多種選項,升級是最合適的選擇。 如果它是一個你正在維護活動的應用程序 - 最好升級到當前穩定版(寫入時為2.4),但如果不是這種情況/希望/可能 - 升級仍然是最合適的解決方案:

升級到最新1.3

推薦的

1.3.17是1.x發布周期中的最后一個版本。 它與PHP 5.4兼容,並包含無數的bug和安全修復程序。 它確實有一些遷移步驟,但通常不超過幾分鍾(或最多,幾小時)工作。 升級是一個簡單的過程 - 只需下載新版本並替換cake文件夾即可。

升級到最新的1.2

簡單

1.2.12最后的1.2次要版本是否與PHP 5.4兼容,升級到此版本不存在與現有應用程序代碼兼容性問題的風險。 升級是一個簡單的過程 - 只需下載新版本並替換cake文件夾即可。

沉默E_STRICT警告自己

最容易 (但也很hacky)

使1.2 php 5.4兼容所需的更改實際上非常簡單 - 您可以自己應用它(只需查找error_reporting並將& ~E_STRICT添加到設置中)。 當然不建議編輯蛋糕文件夾 - 但如果您正在尋找變化最小的解決方案:就是這樣。

似乎舊的CakePHP在較新版本的PHP上不能很好地發揮作用。 請看這里: http//i.justrealized.com/2009/cakephp-php-deprecated-error-warning/

請注意,不推薦使用CakePHP 1.2。 如果你想堅持1.x版本,建議使用至少1.3,因為與1.2沒有重大差異。

但是如果你仍然堅持,你可以將PHP降級到5.2或更低以兼容

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM