2011-02-02 66 views
0

我有一個textarea,我希望用戶能夠輸入變量(每行一個變量)。當他們點擊提交,然後我送什麼,他們已經有一個jQuery張貼到PHP腳本中輸入如下所示:如何將文本從jquery帖子拆分爲數組

$('#submit').click(function() { 
    variables = $('#variables').val(); 
    $.post('script.php', { "variables": variables }, function(data) { 

    }, 'json'); 
}); 

我容易收到字符串中的腳本確定有:

$variables = $_POST['variables']; 

但如何我會將這個變量串分成一個數組嗎?我曾嘗試過:

$variableList = explode("\r\n", $variables); 
preg_replace("\r\n", '<br />', $variables); 
str_replace("\r\n", '<br />', $variables); 

任何人都可以幫忙嗎?

+0

如何字符串中,你得到什麼樣子的? – 2011-02-02 09:32:56

回答

2

你雖然沒有指定的話,我相信這個問題是因爲你沒有分裂的正確的事:

在Mac上,這就是所謂的回車或CR字符。在Windows編輯器中,回車鍵插入回車 - 換行符(CR-LF),字符,並且在Linux機器上,它是換行符(LF)字符。

來源:http://www.paulmc.org/whatithink/2007/03/25/cr-vs-lf-vs-crlf/

相反的:

$variableList = explode("\r\n", $variables); 

嘗試:

$variableList = explode("\n", $variables); 
0

正如我不能確定該行是否打破你從Windows用戶將\r\n或如果一切都將規範爲\n,我建議嘗試正則表達式:

$list = array_map('trim', preg_split("/$/m", $variables)); 

,或者如果它被歸一化,如在提出我的意見:

$list = explode("\n", $variables);