2015-05-21 42 views
0

我正在構建一個基於TYPO3的網站,我在這裏使用TER的不同擴展。現在,兩個插件一起使用會產生不良結果:呈現網站中的PHP警告。TYPO3 Fluid:在flashMessages中壓制PHP警告

一個擴展名是tt_products,它通過訪問某些數組中的未定義索引來產生消息。另一個分機是tkaddress,它顯示消息。

tkaddress是基於流體的模板,並使用<f:flashMessages />視圖助手來顯示正確的錯誤,如無效的E-Mail地址編輯地址記錄時輸入。 不幸的是,否則將被忽略PHP的警告也陷入這個視圖助手,這給像

PHP的警告信息:非法串在/ usr /本地/網絡/ apache24 /數據/ typo3conf/EXT偏移「名」/tt_products/view/class.tx_ttproducts_info_view.php第301行

這隻發生在活服務器上。在我的本地開發環境中,我沒有收到這樣的消息。這兩個擴展的概念是相同的,我不能將問題追溯到根本情況。

(我知道,在tt_products固定的錯誤將是正確的做法,但我並不想修改它)

是對一些設置使用流體<f:flashMessages />時抑制PHP警告?

更新:

開發環境:

  • TYPO3 6.1.5
  • PHP 28年3月5日
  • tt_products 2.7.6
  • 的error_reporting(PHP INI):22519
  • 操作系統:Windows 7

現場環境:

  • TYPO3 6.1.5
  • PHP 5.4.40
  • tt_products 2.7.6
  • 的error_reporting(PHP INI):22519
  • OS:FreeBSD的

所以只有操作系統和PHP版本不同。我也找不到在PHP或TYPO3相關的錯誤報告設置上的差異(兩者都將displayErrors設置爲1)

+0

請向我們提供一些更多的信息就像你正在使用tt_products的版本,你的PHP版本(在開發和生產環境)和版本的TYPO3 .... –

+0

@ArekvanSchaijk增加系統信息 –

回答

1

PHP版本似乎導致您的開發環境和生產環境之間的所述區別。我引用;

How do I correct this Illegal String Offset?

但是,此警告消息是新的PHP 5.4。如果發生這種情況,舊版本沒有 警告。他們會默默地將'type'轉換爲0,然後 嘗試獲取字符串的字符0(第一個字符)。所以如果這個 代碼應該工作,這是因爲濫用像這樣的字符串 並沒有引起任何投訴在PHP 5.3及以下。 (很多老的PHP代碼 經歷了升級後這個問題。)

tt_products

看來你正在使用tt_products版本2.7.6

由於版本2.7.6有一些錯誤修復,包括class.tx_ttproducts_info_view.php文件中的一些代碼更改,這些更改可能會解決您的問題。

嘗試更新tt_products2.7.17版本,請參見:

http://typo3.org/extensions/repository/view/tt_products

如果問題仍然出現在最近版本的擴展,你可以提交您的問題:

https://forge.typo3.org/projects/extension-tt_products

禁止警告

但是忽略任何警告是不是你可以看的正確方法:

TYPO3: how to supress deprecated warnings?

+0

甚至沒有認爲PHP版本的差異造成的警告,但一些顯示設置...升級tt_products到2.7.17固定的問題! –