2013-08-20 186 views
0

我想從URL字符串中創建一個PHP數組。PHP從URL獲取數組

我的代碼:

$files = urldecode($_POST['files']); // The String 
error_log($files); // Output to see how it looks like 
parse_str($files); // parse... 
error_log($files[0]); // See the result 

我的error_log後,我運行腳本:

file[]=U07ttCL89 
f 

(如果有人想知道爲什麼我輸出,error_log - 是因爲我看不到輸出)

所以問題是:爲什麼解析後返回f?我看了一下PHP手冊,然後去做別的事情! (http://php.net/manual/en/function.parse-str.php

$_POST['files']]語法是:

file[]=XXXXXXXXX&file[]=YYYYYYYY&file[]=ZZZZZZZZZ 

希望你明白。 謝謝。和對不起我的英語

+0

我剛剛看了一個音符:'此功能自動urldecodes值(在該文檔中未提及).' – 2013-08-20 20:36:07

回答

1

你有一個錯字。新變種是filefiles;)

error_log($file[0]); // See the result 

您可以訪問一個字符串像數組。 如果使用$ files [0],則輸出存儲在$ files中的字符串的第一個字符。 在你的情況下,它是file[]=XXXXXXXXX&file[]=YYYYYYYY&file[]=ZZZZZZZZZ

+0

我怎麼沒注意到?我覺得很愚蠢。非常感謝你的幫助!欣賞它! – HtmHell

+0

LOL當你讀到你的答案時,你應該看到我的臉。 – HtmHell

+0

是的,這並不容易。我一開始並沒有看到,也是:) –

-1

使用此:

$files = array(); 
$count = count($_POST['files']); 
for($i=0;$i<$count;$i++){ 
    $files[] = $_POST['files'][$i]; 
} 

UPDATE:答案是簡單的實際

$files = $_POST['files']; 
+0

它輸出相同的 - 'F' – HtmHell

+0

幫我一個忙,運行線路: ** error_log(json_encode($ _ POST))**並在下面的評論中發佈回覆 – wedstrom

+0

沒關係。你用你愚蠢的錯字欺騙了我! – wedstrom