请帮助从while循环删除最后一个逗号

时间:2015-04-12 02:04:22

标签: loops while-loop substr

你可能认为这是一个重复的内容。它不是。我尝试了所有的解决方案。这是问题所在。

如果您在while循环中使用任何解决方案(substrrtrim等),则会从每个循环项中删除它们。如果你使用while循环之外的任何解决方案,那么只显示while循环的最后一项。

循环中的解决方案:

(a,b,c,d,e,)变为(abcde)

循环外的解决方案:

(a,b,c,d,e,)变为(e)。

非常感谢对此的许多澄清。感谢您的帮助!是的,我现在已经工作了六个小时了。请帮我解决这个问题。

这是我的代码(没有解决方案):

<script type="text/javascript">
    states=new array (<?php $query18 = "SELECT * FROM states ORDER BY state ASC";
                    $result18 = $db->query($query18);

    while ($row18 = $result18->fetch(PDO::FETCH_ASSOC)) {

        $states4 = $row18['state'];

        $states5 = "\"$states4\",";

        echo $states5;

    } ?> ); </script>

我试图将我的状态列表(从数据库中)放到javascript中的数组中。

2 个答案:

答案 0 :(得分:0)

看来你还没有关闭数组的右括号。

应该是,

states=new array (<?php $query18 = "SELECT * FROM states ORDER BY state ASC"; $result18 = $db->query($query18); ?>);

答案 1 :(得分:0)

我对JavaScript知之甚少,但你可以改变你的逻辑如下:

first=1;
while(there-is-data) {
    $states4 = ...
    if (first) {
        first = 0;
        $states5 = $states4;
    } else {
        $states5 = ","\$states4;
    }
} // while

除了第一个迭代之外,您为所有迭代连接逗号和新数据。对于第一个,您可以排除逗号。