首先,我猜想PHP中的「致命錯誤:超出最大執行時間」是服務器端錯誤,不應該依賴於瀏覽器版本,對不對?但似乎它!!!PHP fgetcsv遇到致命錯誤:在Firefox上超出最大執行時間
我有這段代碼來讀取來自窗體中文本區域的csv數據。
$handle = tmpfile();
fwrite($handle, $csvclip);
fseek($handle, 0);
while (!feof($handle)) {
$r = fgetcsv($handle, 1000, $delimiter, '"'); <---- Here it gives Fatal Error
print $r[0];
}
而數據是這個,沒什麼特別的,4列和3行。
a b 1 2
c d 3 4
e f 5 6
代碼工作在所有瀏覽器(IE,Chrome瀏覽器,e.t.c),我可以看到,除了Firefox中的解析數據!!!!!我在不同的電腦上測試過,但是一樣所有的瀏覽器都OK,但火狐提供了「致命錯誤:超過最大執行時間」有「fgetcsv」
行我使用PHP版本5.2.10和2個不同版本的Firefox 3.5.16和3.6.6
以前有人見過這個問題嗎?
編輯:代碼在兩個不同的Linux服務器上測試CentOS 5.3和5.5,使用兩臺不同的PC,具有所有瀏覽器。
編輯2:解決
好吧,我發現這個問題。 $分隔符值來自有3個值「,」「;」和「\ t」哪些瀏覽器將「\ t」顯示爲空格,我沒有注意到它。
似乎firefox正在做一些事情,所以PHP不明白它的選項卡。但其他瀏覽器按預期發送\ t。
如果我硬編碼 「\ t」 的像fgetcsv($處理,1000, 「\ t」 的,「 '')也能正常工作與Firefox
第一次火狐給我帶來那麼多的麻煩,而不是IE: )
你爲什麼要讀表單數據? – Zimbabao 2011-02-18 11:21:33