Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] skrypt robi nieptrzebne <br /> po znakach "", ''
Forum PHP.pl > Forum > PHP
AndyPSV
po "", czy '' - skrypt robi niepotrzebne <br /> (raczej: "\n\r"), podczas gdy tych znakow nie ma, wszystko dziala normalnie
jak to usunac?

  1. <?php
  2.  
  3. $text = 'It feels good to be in the zone and not so good to be out of it -- whether below or above your comfort level. Money -- or lack thereof -- is just one of many ways to get there.
  4.  
  5. \'\'
  6. aaa
  7. ""
  8.  
  9. bb';
  10.  
  11. function trimBR($s,$wrap=0,$html=0) {
  12. if($html <> 0) $s = htmlspecialchars($s);
  13. $s = trim(nl2br(preg_replace('/(\r\n|\t|\n){2,}/',"\r\n",$s)));
  14. $s = str_replace('<br />',"\r\n",$s);
  15. if($wrap <> 0) $s = wordwrap($s,$wrap,"<br />",true);
  16. return $s;
  17. }
  18.  
  19. echo nl2br(trimBR($text));
  20. # echo nl2br($text);
  21.  
  22. ?>
abort
nie rozumiem pytania. Stosujesz funkcję nl2br i się dziwisz, że masz br/
W ogóle funkcja jak dla mnie jest zagmatwana, ale ja tam ekspertem nie jestem. Co ona (ta funkcja) ma w ogóle robić, i co Ty chcesz osiągnąć?
AndyPSV
trzeba pewnie usunac nl2br, bo to ono to powoduje; \n robi <br /> po tym (innej opcji nie widze);
tylko jak to zrobic, aby osiagnac to samo przy wyrzuceniu: nl2br i str_replace?
abort
Nadal nie wiem, CO CHCESZ osiągnąć (opisz to dokładniej). Mimo tego, proponuję wykonać w miejscu instrukcji "echo nl2br(trimBR($text))" - instrukcje:
1. echo $text
2. echo nl2br(trimBR($text, 0, 0))
3. echo nl2br(trimBR($text, 1, 0))

AndyPSV
funkcja usuwa zbedne entery, czyli np. kto zrobi

  1. AAAAA
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8. AAAAAAAAAA


to bedzie wygladac

  1. AAAAA
  2.  
  3. AAAAAAAAAA


i ona spelnia swoja funkcje, dla tesktu (kazdego), jednak problem pojawia sie, gdy w tekscie pojawia sie znaki: "" oraz '',

bo jak widzisz jest tak:

  1. \'\' (komentarz: NIE MA zbednego <br/> do usuniecia)
  2. aaa
  3. ""


a wynik jest dzialania jest taki:

  1. \'\'
  2. (ZBEDNY <br/>)
  3. aaa
  4. (ZBEDNY <br/>)
  5. ""



trzeba wyeliminowac nl2br() i str_replace, aby dzialala ona poprawnie, jednak jak usunac <br /> z wyniku koncowego?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.