2009-11-26 37 views
2

我寫了一個簡單的foreach來過濾一個數組並將其結果寫入另一個數組。警告「變量似乎沒有在其範圍內使用」在foreach

foreach ($users as $user) { 
    ... 
    $user_email_list[ ] = $user[ "intranet-id" ][ "value" ]; 
    ... 
} 

問題是,NetBeans被展示我一個警告「變量似乎並不在其範圍內使用」上$user。如果我在初始化之前嘗試初始化$user,則不會顯示警告。但它似乎並不正確。

這是一個NetBeans錯誤還是我誤解了任何東西?

我正在使用NetBeans 6.7.1版(Build 200907230233)和PHP 5.2.10。

+0

代碼看起來不錯,Aptana IDE不抱怨。 Foreach結構不會在PHP中創建範圍。 – 2009-11-26 12:19:59

+0

我剛剛意識到索引[「intranet-id」]和[「value」]是來自表的cols,被解析成不同類中的數組。 NetBeans可能會遇到問題。 – 2009-11-26 14:38:41

回答

3

Netbeans可能會弄錯 - 代碼似乎沒問題。

0

代碼對我來說看起來很好,而且我看到Netbeans之前也犯過類似的錯誤,所以我不擔心它。

有趣壽,我只是複製你的代碼到NetBeans(我使用的是完全相同的版本和構建),並沒有得到警告

+0

您是否啓用了這些警告?工具 - >選項 - >編輯 - >提示:檢查所有選項。 – 2009-11-26 14:25:26

0

你的代碼看起來很好..這種情況經常發生在NetBeans。花一秒鐘的時間看看它,並確定它是錯誤的是我通常做的。有時關閉並重新打開該文件會使NetBeans重新解析文件並將其解決。我也看到重新啓動NetBeans,但每次發生這種情況都很痛苦。