2016-09-01 6 views
2

Mein Textbereich ($ _POST ['data']) enthält 10 Strings, die jeweils durch eine neue Zeile (\ n) getrennt sind. Zum Beispiel:PHP - Wählen Sie die ersten 5 Zeilen aus einem Textbereich

January 
February 
March 
April 
May 
Jun 
July 
August 
September 
November 

In PHP, wie kann ich nur die ersten 5 Elemente aus diesem $ _POST [ 'data'] wählen?

Ich habe versucht:

$_POST['data'] = array_slice(explode("\n", $_POST['data']), 0, 5); 

aber es scheint nicht zu arbeiten ..

+0

Versuchen Sie, diese pregsplit anstelle von explodieren: http://stackoverflow.com/questions/3997336/explode-php-string-by-new-line –

+0

So etwas wie folgt:? $ _POST ['Daten'] = array_slice (preg_split ('/ \ n | \ r /', $ _POST ['Daten'], -1, PREG_SPLIT_NO_EMPTY), 0, 5); Ich habe es versucht, aber es funktioniert nicht .. – Tom

+1

Wahrscheinlich mehr wie: $ _POST ['Daten'] = array_slice (preg_split ("/ \\ r \\ n | \\ r | \\ n /", $ _POST ['Daten']), 0, 5); –

Antwort

0

Versuchen

<?php  
if (isset($_POST)){ 
$str = $_POST['data']; 

$lines=explode("\n", $str); 

for($i = 0; $i < 5; ++$i) {  
    echo $lines[$i];//just get the list 
    echo "$lines[$i]"."<br>";//break the lines with br 
    echo "$lines[$i]"."\n";//break the lines with nr 
    } 
} 
?> 
Verwandte Themen