2010-06-28 24 views
7

İçinde taşıma dönüşü olan bir değişkeni ($myClass[0]->comment;) var. "\n" ile o değişkendeki tüm satırbaşı iadelerini değiştirmek istiyorum. Bunu nasıl yapabilirim.
altında bir Biti İşteŞaryo dönüşü nasıl değiştirilir

$myClass[0]->comment;  

yardımcı olabilecek bazı çıktı üretmesi

<?php 
      $test = explode(chr(13),$myClass[0]->comment); 
      var_dump($test); 

?> 

ÇIKIŞ

array 
    0 => string '12' (length=2) 
    1 => string ' 
' (length=1) 
    2 => string ' 
22' (length=3) 

Tek istediğim \n yerine satırbaşı olmasıdır.

cevap

10

Eğer LF (\ n) ile her CR (\ r) değiştirmek isterseniz, bir hazır \ n istiyorsanız bu

$str=str_replace("\r", "\n", $str); 

, bu

$str=str_replace("\r", "\\n", $str); 
do

Bunun yerine, daha çok "\r\n"'u aramak için CR LF'yi değiştirmek isteyebilirsiniz.

6

Bunu yapmak için str_replace() kullanabilirsiniz: İlk bileşik \ r \ n temizlemek wan't

$test = str_replace("\r", "\n", $myClass[0]->comment); 
3

Eğer str_replace

http://us.php.net/str_replace

str_replace("\r", "\n", $text); 

kullanabilirsiniz, bu yüzden \ n \ n alamıyorsunuz

str_replace("\r\n", "\n", $text); 
str_replace("\r", "\n", $text); 
3

Hayır yapmazsınız.

str_replace("\r\n", "\n", $myClass[0]->comment) 
0

Basitçe str_replace kullanın: Bu istiyorum.

str_replace("\r", "\n", $string); 
8
preg_replace('/\r\n?/', "\n", $str); 

Bu, hem Windows hem de Mac satır sonlarını Unix satır sonlarına dönüştürür. daha işlevsel bir bit (kolay her yerde kullanmak için)

0

şey:

function replace_carriage_return($replace, $string) 
{ 
    return str_replace(array("\n\r", "\n", "\r"), $replace, $string); 
}