php字符串格式

时间:2009-02-24 15:14:54

标签: php string formatting

这是代码

    $i=0;
while ($row = mysql_fetch_array($result)) 
    {
    $output.="idno".$i."=".urlencode($row['usr_id']).
    '&'."res".$i."=".urlencode($row['responce']).
    '&'."sex".$i."=".urlencode($row['sex']).
    '&'."com1".$i."=".urlencode($row['com1']).
    '&'."com2".$i."=".urlencode($row['com2']);
     $i++;

    }

OUTPUT我得到idno是com2字符串的一部分我如何分离它们。

3 个答案:

答案 0 :(得分:4)

&不为零时,您需要添加$i

   $i=0;
while ($row = mysql_fetch_array($result)) 
        {
    $output .= ($i ? '&' : '') . "idno".$i."=".urlencode($row['usr_id']).
        '&'."res".$i."=".urlencode($row['responce']).
        '&'."sex".$i."=".urlencode($row['sex']).
        '&'."com1".$i."=".urlencode($row['com1']).
        '&'."com2".$i."=".urlencode($row['com2']);
     $i++;

        }

答案 1 :(得分:3)

另一种解决方案是使用数组并在之后加入其元素:

$array = array();
$i = 0;
while ($row = mysql_fetch_array($result)) {
    $array[] = "idno$i=".urlencode($row['usr_id']);
    $array[] = "res$i=".urlencode($row['responce']);
    $array[] = "sex$i=".urlencode($row['sex']);
    $array[] = "com1$i=".urlencode($row['com1']);
    $array[] = "com2$i=".urlencode($row['com2']);
    $i++;
}
$output .= implode('&', $array);

此外,您可以使用 argName []声明,在收到此类请求查询字符串时,PHP将转换为数组。

答案 2 :(得分:1)

或者你可以这样做:

$array = array();
$i = 0;
while ($row = mysql_fetch_array($result)) {
    $array["idno$i"] = $row['usr_id'];
    $array["res$i"] = $row['responce'];
    //etc.

    $i++;
}

$output = http_build_query($array);