2012-07-25 60 views
0

我有以下一行代碼在PHP 5.3.1和5.3.8中使用時發生錯誤,我推測所有5.3.x.只注意到它時,我上傳到服務器,因爲它工作在我的本地PHP 5.4.3代碼在PHP 5.4.3中正常工作,但不是int 5.3.8

if (isset($args[0]['field_date']['und'][0]['value']['date'])) { 
    // Do stuff 
} 

的錯誤就要到了,罰款是

不能使用字符串作爲my_module數組offset .module line 9

回答

3

你是如何初始化$args?在對其執行數組功能之前,不能將其用作字符串。

http://informationideas.com/news/2006/06/14/fatal-error-cannot-use-string-offset-as-an-array-in/

+0

的$ args是一個數組,而不是字符串 – 2012-07-25 12:04:36

+1

某處的路線,應該是一個數組是一個字符串。也許'$ args [0]'是一個字符串,或者'$ args [0] ['field_date']'是一個字符串,或者'$ args [0] ['field_date'] ['und']'等等。 .. – 2012-07-25 12:21:10

+0

我現在看到問題的歡呼聲。 – 2012-07-25 13:27:58