从do / while循环创建一个值字符串

时间:2014-02-23 18:55:08

标签: php

我正在尝试使用逗号分隔的整数创建一个php字符串。字符串的值来自do {} while循环。我该怎么做?

//GRAB EC DATA
    $mysql_ec_data = "SELECT `ec_c_id` FROM `e_c` WHERE `ec_id` = '$e_id'";
    $query_ec_data = mysql_query($mysql_ec_data) or die(mysql_error());
    $ec_data = mysql_fetch_assoc($query_ec_data);   

    $string = "";           
    do {

        //There will be values looping through here that I want to add to a single string.
        $string =+ $ec_data['ec_id'];               

    } while ($ec_data = mysql_fetch_assoc($query_ec_data)); 
    //this is how the values from the while loop should look in the string at the end
    $string = 45,52,23;

3 个答案:

答案 0 :(得分:2)

使用此:

$string .= $ec_data['ec_id'] . ', '; 

答案 1 :(得分:2)

您可以使用$string =+ $ec_data['ec_id'] . ", ";并在循环后使用PHP substr方法删除最后一个逗号:http://nl1.php.net/substr

$string = substr($string, 0, -1);

答案 2 :(得分:2)

小心你的赋值连接运算符,在PHP中它是.=。 处理逗号分隔符的一种简单方法是首先将整数放在数组中 然后在循环之后将它们“粘合”在一起:

$string = "";
$integers = array();           
do {
    $intgers[] = $ec_data['ec_id'];               

} while ($ec_data = mysql_fetch_assoc($query_ec_data)); 

if (count($integers)) {
   $string = implode(",", $integers);
}