Php "a capo"

  • Creatore Discussione Creatore Discussione ispanic
  • Data di inizio Data di inizio

ispanic

Utente Attivo
28 Ago 2014
119
0
0
PHP:
$dbtext = str_replace ("\r\n", " ", $descrizione);
$db_text = wordwrap ($dbtext, 100, "\r\n");


Vorrei registrare nel database una stringa che ogni "a capo" viene tramutato in "spazio" e l'ho fatto ma ore vorrei che ogni 100 caratteri questa stringa vada a capo, così ho usato wordwrap().. ma nulla da fare.. rimane come se non ci fosse.. cosa ho sbagliato?
 
PHP:
<?php
$from = array("\n", "\r", "\r\n", "\n\r");
$dbtext = str_replace ($from, " ", $descrizione);
$dbtext = wordwrap($dbtext, 100, "\n");
?>
 
niente... questo io lo metto nel database e poi lo prendo in un altro script...
Comunque nulla da fare
 
Ok grazie, ho provato anche a farlo così:

PHP:
$descrizione= "SELECT descrizione FROM cartella WHERE id = '1'";
$descrizione_1= mysqli_query($connessione, $descrizione);
$descrizione_2= mysqli_fetch_assoc($descrizione_1);
$zi = $descrizione_2['descrizione'];
$ciao = wordwrap($zi, 100, "\r\n");
echo '<div><font class="nome_paragone_1" face="Times New Roman, Times, serif">'.$ciao. "</font></div>";

ma non mi va niente a capo, proprio strano
 
Ma nel database ti va a capo? Perché nell'output è tutt'altra storia perché bisogna toccare l'HTML.
 
No, ma non mi importa molto del database, potrei anche fare solo l'output che va a capo ogni tot... come potrei fare?
 
si ho cambiato già.. ma non viene, nn va a capo, mi da solo sempre la stessa linea lunghissima..
 
ciao
prova così
PHP:
<?php
$descrizione_2['descrizione']="nel mezzo di\r\nnostra vita \rmi ritrovai per una selva oscura \n che la diritta via era smarrita";
//$descrizione_2['descrizione']=nl2br($descrizione_2['descrizione'], false);
$from = array("\n", "\r", "\r\n", "\n\r");
$dbtext = str_replace ($from, "", $descrizione_2['descrizione']);
echo wordwrap($descrizione_2['descrizione'],14, "<br> ");//lo spazio dopo <br>
?>
output
nel mezzo
di nostra
vita mi
ritrovai per
una selva
oscura che
la diritta via
era smarrita
 
Niente, non viene!!
PHP:
$descrizione_4= "ciao";
$descrizione_5= wordwrap($descrizione_4, 1, "<br> ");
echo '<div><font class="nome" face="Times New Roman, Times, serif">'.$descrizione_5."</font></div>";
 
ciao
se metti lunghezza 4 su un stringa lunga 4 di certo non vedi nulla
PHP:
<?php
//$descrizione_4="nel mezzo di \r\nnostra vita \rmi ritrovai per una selva oscura \n che la diritta via era smarrita";
$descrizione_4="nel mezzo di nostra vita mi ritrovai per una selva oscura che la diritta via era smarrita";
//$from = array("\n", "\r", "\r\n", "\n\r");
//$descrizione_4 = str_replace ($from, "", $descrizione_4);
//$descrizione_5= wordwrap($descrizione_4,4, "<br> ");//non tronca le parole
$descrizione_5= wordwrap($descrizione_4,4, "<br> ", 1);//tronca alla lunghezza impostata
echo '<div><font class="nome" face="Times New Roman, Times, serif">'.$descrizione_5."</font></div>";
?>
poi guarda che non tronca le parole, per troncare le eventuali parole devi aggiungere il parametro cut uguale a 1
out
nel
mezz
o di
nost
ra
vita
mi
ritr
ovai
per
una
selv
a
oscu
ra
che
la
diri
tta
via
era
smar
rita
p.s.
font face è deprecato


dimenticavo, guarda http://it2.php.net/manual/it/function.wordwrap.php
 
Ultima modifica:
Niente, non viene!!
PHP:
$descrizione_4= "ciao";
$descrizione_5= wordwrap($descrizione_4, 1, "<br> ");
echo '<div><font class="nome" face="Times New Roman, Times, serif">'.$descrizione_5."</font></div>";
Questo non funziona per forza, visto che wordwrap() non spezza le parole.
 

Discussioni simili