PHP如何删除最后一个分隔符?

PHP如何删除最后一个分隔符?,php,separator,Php,Separator,我尝试了很多变化,但我找不到解决办法。以前的输出是这样的: 一个字 b字 c字 等 我已经更改了部分代码,现在输出为: 单词a |单词b |单词c| 如何卸下最后一个分离器 代码是: <div id="right"> <div id="synonyms"> <? $separator = '<span class="pipe">|</span>'; $sql = mysql

我尝试了很多变化,但我找不到解决办法。以前的输出是这样的:

  • 一个字
  • b字
  • c字 等
  • 我已经更改了部分代码,现在输出为:

    单词a |单词b |单词c|

    如何卸下最后一个分离器

    代码是:

    <div id="right">
    
            <div id="synonyms">
            <?
    
            $separator = '<span class="pipe">|</span>';
    
            $sql = mysql_query("SELECT DISTINCT word, id_word FROM words WHERE word LIKE '$word' ORDER BY word ASC LIMIT 100");
            echo mysql_error();
    
            while ($row=mysql_fetch_row($sql))
                {
                    $word_synonym = $row[0];        
                    $id_word_synonym = $row[1];                 
    
    
                            $sql2 = mysql_query("SELECT DISTINCT synonym, id_synonym FROM synonyms WHERE id_word = '$id_word_synonym' ORDER BY synonym ASC");
                            echo mysql_error();
                            $num_results =mysql_num_rows($sql2);
    
                            while ($row=mysql_fetch_row($sql2))
                                {
                                $synonym = $row[0];
                                $id_synonym = $row[1];
    
                                $synonym2 = str_replace(" ", "+", $synonym);
    
                                echo "".$separator."<a href=".$site_url."/?word=".$synonym2.">".$synonym."</a>  ";
    
    
    
                                }
    
                }
            ?>
            </div>
    
    
    
    在执行类似操作时,我的首选方法是构建字符串数组,然后在输出最终字符串时使用。这是非常有用的,因为这样我可以做其他事情,比如合并组、过滤组等。

    这样做时,我的首选是构建字符串数组,然后在输出最终字符串时使用。这是非常有用的,因为这样我就可以做其他事情,比如合并组、过滤组等等。

    这是以前发布并删除的,但我认为它值得作为可选方法包括在内。虽然我更喜欢Kolink的方法,但我也用过:

    使用迭代器($i)标识第一个(或最后一个)项

    $i=0;
    而($row=mysql\u fetch\u row($sql2)){
    $i++;
    $synonym=$row[0];
    $id_同义词=$row[1];
    $synonym2=str_replace(“,“+”,$synonym);
    回音($i>1?$separator:)';
    }
    
    这不是答案的一部分,但这里有一个Kolink(可以说是优越的)方法的例子:

    $links=array();
    而($row=mysql\u fetch\u row($sql2)){
    $synonym=$row[0];
    $id_同义词=$row[1];
    $synonym2=str_replace(“,“+”,$synonym);
    $links[]='';
    }
    如果(!空($links)){
    回声内爆($separator,$links);
    }
    
    这是以前发布并删除的,但我认为它值得作为可选方法包含在内。虽然我更喜欢Kolink的方法,但我也用过:

    使用迭代器($i)标识第一个(或最后一个)项

    $i=0;
    而($row=mysql\u fetch\u row($sql2)){
    $i++;
    $synonym=$row[0];
    $id_同义词=$row[1];
    $synonym2=str_replace(“,“+”,$synonym);
    回音($i>1?$separator:)';
    }
    
    这不是答案的一部分,但这里有一个Kolink(可以说是优越的)方法的例子:

    $links=array();
    而($row=mysql\u fetch\u row($sql2)){
    $synonym=$row[0];
    $id_同义词=$row[1];
    $synonym2=str_replace(“,“+”,$synonym);
    $links[]='';
    }
    如果(!空($links)){
    回声内爆($separator,$links);
    }
    
    我经常这样做,这种方法也应该是非法的。非常干净。类似于
    内爆($separator,$values)
    。我也这样做,但更多的时候我很喜欢这样做,就像这种方法一样,应该也是非法的。非常干净。类似于
    内爆($separator,$values)
    。我也会这样做,但我更愿意使用它,但您可以替换
    echo.“$separator.”带有
    回显“$separator”无关,但您可以替换
    echo.“$separator.”带有
    回显“$separator”
    
    $i=0;
    while ($row = mysql_fetch_row($sql2)) {
      $i++;
      $synonym = $row[0];
      $id_synonym = $row[1];
      $synonym2 = str_replace(" ", "+", $synonym);
      echo ($i>1?$separator:"").'<a href="$site_url/?word=$synonym2">$synonym</a>';
    }
    
    $links=array();
    
    while ($row = mysql_fetch_row($sql2)) {
      $synonym = $row[0];
      $id_synonym = $row[1];
      $synonym2 = str_replace(" ", "+", $synonym);
      $links[]='<a href="$site_url/?word=$synonym2">$synonym</a>';
    }
    
    if (!empty($links)) {
      echo implode($separator,$links);
    }