ďťż
Podstrony
|
telcocafeWitam,<?php $stri = ' Lorem ipsum, dolor sit, amet erat... Lorem ipsum, dolor sit,,, amet erat. '; $stri = str_replace("<", "<", $stri); $stri = str_replace(">", ">", $stri); $stri = explode("\n\r", $stri); $all_stri = count($stri); echo '<table>'; for($i; $i > $all_stri; $i++) { echo('<tr><td>'.$i.'</td><td>'.$stri[ $i].'</td></tr>'); } echo '</table>'; ?> Mam taki kodzik... chcę by podzielił mi tekst na linijki i każdą przypisał do tablicy. Czyli że z tekstu: Lorem ipsum, dolor sit, amet erat... Lorem ipsum, dolor sit,,, amet erat. zostanie utworzona tablica $stri: $stri[0] = "Lorem ipsum,"; $stri[1] = "dolor sit,"; $stri[2] = "amet erat..."; $stri[3] = "Lorem ipsum,"; $stri[4] = "dolor sit,,,"; $stri[5] = "amet erat."; To co mam nei działa ponieważ zawsze mam jeden element tablicy, a powienienem mieć 6. Proszę o pomoc... Primo: "\r\n", nie "\n\r" :) Secundo: imo najpierw zamień znaki nowej linii na <br /> (nie wiadomo, na jakim serwie odpalisz skrypt), potem dopiero podziel (explode) wg tych <br /> ;) Odnośnie PRIMO: ooo, heh, taki mały szczegłół i taka różnica... ;-D Odnośnie SECUNDO: nie jestem pewien czy rozumiem... jakie to ma znaczenie czy rozbijam w \r\n czy <br /> ??? @edit: Jeszcze jedno pytanie... function bbcode_code2($str) { $stri = $str; $stri = str_replace("<", "<", $stri); $stri = str_replace(">", ">", $stri); $stri = str_replace("\r\n", "<br />", $stri); $stri = explode("<br />", $stri); echo '<table>'; for( $i = 0; $i < count($stri); $i++ ) { echo('<tr><td>'.++$i.'</td><td>'.$stri[ --$i].'</td></tr>'); } echo '</table>'; return [cotuwpisać?]; } co wpisać w miejsce [cotuwpisać?] ( lub jak przerobić kod ) aby wyświetlił się wynik z echo, wyniku FOR i ostatniego echo ? Użytkownik fenekpl edytował ten post 27 czerwiec 2007, 09:58 O ile dobrze patrzę, to możesz wyrzucić return [cotuwpisać?]; i wtedy funkcja po wywołaniu od razu "wypisze" przetworzony tekst. Jeśli chcesz żeby zwracała wartość to zrób to w taki sposób: function bbcode_code2($str) { $stri = $str; $stri = str_replace("<", "<", $stri); $stri = str_replace(">", ">", $stri); $stri = str_replace("\r\n", "<br />", $stri); $stri = explode("<br />", $stri); $return='<table>'; for( $i = 0; $i < count($stri); $i++ ) { $return.='<tr><td>'.++$i.'</td><td>'.$ stri[--$i].'</td></tr>'; } $return.='</table>'; return $return; } i wtedy będziesz mógł ją wywoływać w postaci: $tekst=bbcode_code2('tekst do przetworzenia'); |
|||
Sitedesign by AltusUmbrae. |