Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Usunięcie niechcianego przecinka
Greg23
post
Post #1





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 6.04.2012

Ostrzeżenie: (0%)
-----


Mam skrypt, który wyświetla mi na stronie tagi:

  1. if (!empty($rekordow2[8])){
  2. echo '<p>Tagi: ';
  3. $tags24=explode(",", $rekordow2[8]);
  4.  
  5. foreach($tags24 as $f ){
  6. echo "<a href='' title='".$f."'><strong>$f</strong></a>, ";
  7.  
  8. }
  9. echo '</p>';
  10. }


W wyniku dostaję coś takiego:
  1. Tagi: ala, ma, kota,


Jak pozbyć się tego ostatniego, niepotrzebnego przecinka ?

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
piotrex41
post
Post #2





Grupa: Zarejestrowani
Postów: 168
Pomógł: 26
Dołączył: 15.09.2011
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Powinno zadziałać:
  1. if (!empty($rekordow2[8]))
  2. {
  3. $tags24=explode(',', $rekordow2[8]);
  4. foreach($tags24 as $f)
  5. {
  6. $s .= '<a href='' title='".$f."'><strong>$f</strong></a>, ';
  7. }
  8. $s = substr($s, 0, -1);
  9. echo '<p>Tagi: '.$s.' </p>';
  10. }


Ten post edytował piotrex41 12.07.2012, 13:13:54
Go to the top of the page
+Quote Post
irmidjusz
post
Post #3





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

Ostrzeżenie: (0%)
-----


Nie wiem, co to za dziwactwa ludziska wyprawiają z tym doklejaniem łańcuchów i usuwaniem ostatniego przecinka (czy jakiegokolwiek innego znaku).
A można prościej, tak:

  1. if (!empty($rekordow2[8]))
  2. {
  3. $tagi = array();
  4. foreach(explode(',', $rekordow2[8]) as $f)
  5. {
  6. //tutaj odpowiednio sformatowane elementy, co tam chcemy...
  7. $tagi[] = '<a href="" title="'.$f.'"><strong>'.$f.'</strong></a>';
  8. }
  9. //a to ładnie skleja je do stringa z dowolnym łańcuchem łączącym pomiędzy elementami, niczego zbędnego na końcu ani na początku nie ma...
  10. $s = implode(',', $tagi);
  11. echo '<p>Tagi: '.$s.' </p>';
  12. }

Go to the top of the page
+Quote Post
SmokAnalog
post
Post #4





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Cytat(irmidjusz @ 13.07.2012, 03:00:09 ) *
Nie wiem, co to za dziwactwa ludziska wyprawiają z tym doklejaniem łańcuchów i usuwaniem ostatniego przecinka (czy jakiegokolwiek innego znaku).

Zgadzam się! Niestety PHP w całej tej swojej "łatwości" w wielu osobach zakorzenia programistyczną bylejakość, złe nawyki, klejenie potworków. Chociaż Twój sposób, irmidjusz, jest niewiele lepszy (IMG:style_emoticons/default/smile.gif) Zamiast tych zmiennych/tablic-potworków, wystarczy sprawdzać czy osiągnięto już koniec (lub przerobić na sprawdzanie czy początek):
  1. <?php if($f !== end($tags24)): ?>, <?php endif; ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.12.2025 - 20:07