Come esplodere un campo textarea e visualizzare ogni riga separatamente, avvolta con HTML

23 giu 2013, 22:44:08
Visualizzazioni: 17.4K
Voti: 2

Devo prendere un campo textarea di Advanced Custom Fields e visualizzarlo nel mio template suddividendo ogni riga separatamente. Voglio avvolgere ogni riga del textarea con HTML, come un <li>.

Ho provato il seguente codice, ma non funziona:

if (isset($instruction_textarea)){
    $arry=explode( "\r\n", $instruction_textarea ); // Suddivide il testo in righe usando il ritorno a capo
}
for ($i = 0; $i <= count($arry); $i++){
    echo (trim($arry[$i])+"<br/>"); // Stampa ogni riga pulita dagli spazi con un tag br
}
0
Tutte le risposte alla domanda 1
1

Proverei qualcosa del genere:

$lines = explode("\n", $instruction_textarea); // oppure usa la costante PHP PHP_EOL
if ( !empty($lines) ) {
  echo '<ul>';
  foreach ( $lines as $line ) {
    echo '<li>'. trim( $line ) .'</li>';
  }
  echo '</ul>';
}

Dovrebbe funzionare.

23 giu 2013 23:19:35
Commenti

PHP_EOL si riferisce al carattere di fine riga del server, non del client che ha inviato i dati. Possono essere diversi.

Andy  Gee Andy Gee
14 feb 2021 05:53:45