2011-06-05 118 views
1

我有一個數組,名爲$worker
該數組僅由字符串組成,每個字符串都有多行。var_dump顯示文本,但回顯不是

,如果我做

var_dump($worker); 

它會顯示所有信息,但做

for($i=0,$size=sizeof($worker);$i<$size;++$i) 
{ 
    echo $worker[i]; 
} 

我最終沒有在頁面上。

我很新的PHP,所以對不起,如果這是一個noob問題: 我如何獲得數組中的信息,以正確地打印到屏幕上?

+2

你可能只是忘了'$'在'我'在'$ worker [i]'中。 – Gumbo 2011-06-05 19:39:04

+1

在您的開發環境中啓用屏幕顯示警告,您會立即注意到這些錯誤。 – Matthew 2011-06-05 19:57:28

回答

0

您忘記了我之前的美元符號$worker[$i]

CNC中:刪除了第二部分,也許我太累了:)

+3

第二部分是廢話,因爲沒有使用它的回報價值。 – Gumbo 2011-06-05 19:43:24

3
for($i=0,$size=count($worker);$i<$size;++$i) 
{ 
echo $worker[$i]; 
} 

你忘了 '$' 廉政回聲$工人[$ i];

+0

啊!謝謝,即時通訊習慣於C++,而不必發送垃圾郵件。 – motsu35 2011-06-05 19:43:47

+0

@motsu:來自C++,你會發現PHP是天堂。 – dynamic 2011-06-05 19:47:59

5

您在for循環中錯過了'$ i'變量的'$'。

這是一個好主意,打開錯誤報告而在PHP開發: http://php.net/manual/en/function.error-reporting.php

這是for循環在PHP中的常規語法:

for ($i=0, $c=count($worker); $i<$c; $i++) { 
    echo $worker[$i]; 
} 
+1

關於丟失$實際出錯的更多細節。當PHP看到'$ worker [i]'時,它認爲'i'是一個空字符串而不是一個變量。由於沒有常數名爲'i',它會將'i'轉換爲字符串並嘗試訪問'$ worker ['i']',因爲PHP數組像聯合數組一樣工作。由於'$ worker ['i']'沒有被設置,它返回'null'。 'echo null'打印一個空字符串。另外,由於PHP中的代碼@asdf指出,習慣上使用'count'而不是'sizeof','sizeof'只是'count'的別名。 – 2011-06-05 20:34:22

相關問題