Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]preg_replace
Forum PHP.pl > Forum > Przedszkole
dareksbs
Witam,

orientuje się może ktoś jak wstawić tekst wyjściowy pomiędzy jakiś tekst/znaczniki

chodzi mi o coś takiego :

  1. preg_replace("!" ,"<td></td>", $test);


I chciałbym aby $test był pomiędzy <td></td>
b4rt3kk
  1. preg_replace("!" ,"<td>$0</td>", $test);
dareksbs
Cytat(b4rt3kk @ 21.11.2012, 10:07:09 ) *
  1. preg_replace("!" ,"<td>$0</td>", $test);


Nie wiem czemu, gdy zrobiłem tak zmieściło mi same "!" w td
b4rt3kk
No przecież taki masz wzorzec, chcesz zamieniać wykrzykniki czy co?

  1. preg_replace($test ,"<td>$0</td>", $test);
dareksbs
Cytat(b4rt3kk @ 21.11.2012, 10:16:03 ) *
No przecież taki masz wzorzec, chcesz zamieniać wykrzykniki czy co?

  1. preg_replace("/^.*$/" ,"<td>$0</td>", $test);


mam ciąg tekstu przykłąd

Ala!Damian!Ola!Marcin!Agata

i to trzymam w $test i chcę to teraz oddzielić aby każde imię było pomiędzy znacznikami <td></td>
gdy miałem coś takiego
  1. preg_replace("/!/" ,"<td></td>", $test);

Skrypt usuwał ! i zamiast wykrzyknika tworzył <td></td>, jednakże teraz chciałbym aby każde słowo było w <td></td>
nospor
  1. $test = 'Ala!Damian!Ola!Marcin!Agata';
  2. $zm = '<td>'.str_replace('!','</td><td>', $test).'</td>';
  3. echo $zm;

smile.gif
dareksbs
Cytat(nospor @ 21.11.2012, 10:27:48 ) *
  1. $test = 'Ala!Damian!Ola!Marcin!Agata';
  2. $zm = '<td>'.str_replace('!','</td><td>', $test).'</td>';
  3. echo $zm;

smile.gif


Twój działa mój dalej nie laugh.gif

teraz mój wygląda tak :
  1. $out = '<td>'.str_replace("!" ,"<td></td>", $r['test']).'</td>';


a wynikiem jest :
<td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td><td>!</td>

Tutaj jeszcze dodam że cały skrypt wygląda tak :

  1. echo '<table border="1" width="30%">';
  2. echo "<tr><td>";
  3. $out = '<td>'.str_replace("!" ,"<td></td>", $r['test']).'</td>';
  4. echo $out;
  5. echo "</td></tr>";
  6. echo "</table>";
nospor
nie: echo "<tr><td>";
a: echo "<tr>";

nie: echo "</td></tr>";
a: echo "</tr>";

I pokaż dokładnie co zawiera
echo $r['test'];

Skoro mój działa to i twój musi. Przecież to jedno i to samo.
dareksbs
  1. echo '<table border="1" width="30%">';
  2. echo "<tr>";
  3. $out = '<td>'.str_replace("#" ,"<td></td>", $r['value2']).'</td>';
  4. echo $out;
  5. echo "</td>";
  6. echo "</table>";


A $r['value2'] to wyciągnięcie z bazy i trzyma w sobie
#GIF#JPG#PNG#AVI#MPG#WAV#MP3#OGG#JAR
nospor
Nie echo "</td>";
a: echo "</tr>";
Skupi sie.... mam ci każdą literówkę poprawiać?

A co dokładnie zawiera teraz $out?
var_dump($out);
dareksbs
string(35) "GIF JPG PNG AVI MPG WAV MP3 OGG JAR"
i pod spodem pusta tabela
nospor
edit: AAAAAAAAAAAAAAAAAA
Przecież ja ci napisałem: "</td><td>"
A ty masz "<td></td>"
Kurcze, chłopie, ty nawet nie potrafisz skopiować.... już nie poraz pierwszy w tym temcie muszę poprawiać rzeczy, których nie potrafisz skopiować...od 3 do 8 znaków i problem.... kurcze...
dareksbs
Cytat(nospor @ 21.11.2012, 10:50:07 ) *
edit: AAAAAAAAAAAAAAAAAA
Przecież ja ci napisałem: "</td><td>"
A ty masz "<td></td>"
Kurcze, chłopie, ty nawet nie potrafisz skopiować a co dopiero pomyśleć :/


Jesteś wielki ! DZIAŁA !
A teraz idę spać bo nie spałem całej nocy smile.gif
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.