m0nstar
Goto Top

Value aus foreach in einer neuen Variable speichern (Php)

Es geht um eine Textarea, deren Eingabe möchte ich in eine neue Variable speichern, um diese später wieder verwenden zukönnen

Hallo zusammen,

habe ein kleines PHP Problem, ich habe eine kleine Textarea, deren Wert gebe ich per forech Zeilenweise wieder aus mit dem echo, jetzt wollt ich mal fragen wie ich das Ergebnis aus der foreach in einer neuen Variable speichern kann, um diese später wieder verwenden zukönnen.

Hier mein Script:

<?php
echo '<form action="'.$_SERVER["PHP_SELF"].'" method="post">';  
echo '<textarea name="TA" cols="50" rows="10">';  
if (isset($_REQUEST["TA"])) {  
    echo $_REQUEST["TA"];  
}
echo '</textarea>';  
echo '<input type="submit" value="Aschicken">';  
echo '</form>';  
 
if (isset($_REQUEST["TA"])) {  
    $lines = preg_split("/\r\n/", $_REQUEST["TA"]);  
    foreach ($lines as $key => $value){
      echo ''.$value.' ';  
    }
}
?>

Ausgabe sieht so aus:

TestZeile1 TestZeile2 (und diese Ausgabe möchte ich in einer neuen Variable nun speichern)


Würde mich sehr über eine Hilfe freuen.

Lg,
m0nstar

Content-ID: 180703

Url: https://administrator.de/forum/value-aus-foreach-in-einer-neuen-variable-speichern-php-180703.html

Ausgedruckt am: 23.12.2024 um 08:12 Uhr

EvilMoe
EvilMoe 17.02.2012 um 17:37:40 Uhr
Goto Top
Hallo,

wofür machst du denn das preg_split?
Willst du nur eine bestimmte Zeile in der Variable haben oder was möchtest du genau haben?

Du willst glaube ich das hier haben:
$inhalt = '';    
foreach ($lines as $key => $value){ 

       $inhalt .= $value.' ';  

    } 

EDIT: preg_split gibt ja ein Array zurück. Dann kannst du dir die Schleife auch ganz sparen und einfach implode verwenden.
 $inhalt = implode($lines, ' ');  
m0nstar
m0nstar 17.02.2012 um 17:41:39 Uhr
Goto Top
Danke face-smile das wars schon, funktioniert...

edit:// ok hast recht face-smile danke
EvilMoe
EvilMoe 17.02.2012 um 17:43:43 Uhr
Goto Top
Das müsste mit explode aber schneller gehen statt mit einem regulären Ausdruck.
 $lines = explode("\n", $_REQUEST["TA"]);  

Könntest ja mal testen ob das nicht schneller läuft, vermute aber das explode schneller arbeitet.
m0nstar
m0nstar 17.02.2012 um 18:05:54 Uhr
Goto Top
jop geht wirklich etwas schneller face-smile wusst ich garnet mit dem explode
EvilMoe
EvilMoe 17.02.2012 um 19:06:12 Uhr
Goto Top
Da fällt mir gerade ein, du möchtest doch nur die "\r" und "\n" entfernen oder nicht?
Sozusagen die eingegebenen neue Zeilen wieder zu einer zusammenfügen.

Dann ist explode und da nach ein implode natürlich blödsinn^^
Dann ist das entfernen von "\n" und "\r" natürlich eleganter und einfacher.