Newsgroup: it.comp.www.php
Titolo: Problemi replace di accapo in una stringa...

Ciao,
Ho una funzione che mi mette il campo memo di un db in una stringa, quello
che vorrei č mettere questa stringa in un txt, sostituendo gli "accapo" con
degli spazi.
Ho provato in questi 2 modi :
str_replace("\n", " ", $campo);
ereg_replace("\n]", " ", $campo);
ereg_replace("[\x20\]", " ", $campo);
Ma non ho ottenuto nulla...Anzi...A dire il vero mi mette uno spazio dove
vorrei, ma se scrivo la variabile in un txt va comunque accapo. Insomma la
sostituzione la fa, ma va comunque accapo.
Qualcuno ha suggerimenti ?
Grazie in anticipo.
--
RaSca
"Il regno dei cieli č simile a un mercante che va in cerca di perle
preziose; trovata una perla di grande valore, va, vende tutti i suoi averi e
la compra." - Gesů Cristo
http://web.tiscali.it/rascasoft

 Qualcuno ha suggerimenti ?
problema "\n\r"?
$campo=str_replace("\r","", $campo); // elimina \r
$campo=str_replace("\n"," ", $campo); // subst \n

 $campo=str_replace("\n"," ", $campo); // subst \n
Grazie Jurgen,
solo per curiosità...Cosa rappresenta \r ? se \n è "accapo", \r è ?
Grazie mille,
--
RaSca
"Il regno dei cieli è simile a un mercante che va in cerca di perle
preziose; trovata una perla di grande valore, va, vende tutti i suoi averi e
la compra." - Gesù Cristo
http://web.tiscali.it/rascasoft

 solo per curiosità...Cosa rappresenta \r ? se \n è "accapo", \r è ?
chiedilo a mister Bill...
sotto il vecchio DOS \n 'scende di una linea'
e \r 'riporta il cursore all'inizio della linea'
(rispettivamente new line e carriage return)
sotto windows il concetto è sparito (vedi caratteri sporchi del notepad) ma 
per compatibilità coi files è rimasto invariato l'usare '\r\n'.
risultato: un bel paciocco!!
sotto ux è sempre stato '\n' e basta, difatti nessuno ha mai avuto problemi.
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.nist.gov/dads/

 solo per curiosità...Cosa rappresenta \r ? se \n è "accapo", \r è ?
\r e' un CR = Carriage Return
\n e' un LF = Linefeed
Dipende dal SO cosa ti generano le varie funzioni quando emetti o leggi \n.

 Dipende dal SO cosa ti generano le varie funzioni quando emetti o leggi
\n.
Php gira sotto Apache che a sua volta è webserver di una macchina Linux.
Leggendo anche quello che ha scritto anche Punkarruso, ho verificato aprendo
il mio file con less (usando l'opzione -C per visualizzare l'interezza),
risultato : il file risulta senza gli accapo, ma con delle ^M dove su Write
(di windows) mi va accapo.
Alla fine userò sia $campo=str_replace("\r","", $campo); che
campo=str_replace("\n"," ", $campo); così avrò la compatibilità con gli
editor di una parte e dell'altra.
Se avete voglia di capire cosa siano quelle ^M...Ad ogni modo ho risolto,
grazie 2000.


 ha scritto nel
messaggio news:C10g9.18670$6O4.3...@twister1.libero.it...

Io avrei un problema di questo tipo:
nel db ho un campo blob in cui faccio scrivere degli articoli , dei testi
anche lunghetti.
Utilizzo per l'inserimento una texarea ed in essa si riesce a formattare
decentemente il testo almeno con a capo tabulazioni e spazi.
Quando poi stampo i dati a video, non + nella textarea perdo tutte le
impostazioni e il testo appare scritto senza  a capo spazi ecc.. Come fare
per mantenere la stessa formattazione ?

 per mantenere la stessa formattazione ?
guarda le funzioni nl2br(), htmlentities() e htmlspecialchars() sul manuale.
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/gnu/manifesto.it.html

 grazie 2000.
le ^M sotto linux sono i '\r'.
probabilmente ci sono solo quelli perché con entrambi (\r\n) vedresti ^M 
solo a fine linea.
se apri un file SENZA '\r'  nel notepad di windows (non write, eh!) anziché 
vedere gli accapo vedrai dei quadratini neri (vuol dire che non è completo 
il codice di accapo.
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/gnu/why-gnu-linux.it.html