删除最后一个字符

时间:2012-11-26 17:51:27

标签: php

我注意到stackoverflow中有很多这样的主题,但我读的只有1个变量,我有两个,我有点混淆。

所以这是我的代码,

$query = mysql_query("SELECT Provider.provider_id, provider.company_name FROM Provider");

while($row = mysql_fetch_array($query)){
    echo "'".$row['provider_id']."':'".$row['company_name']."',";

}

我正在使用它为Jeditable生成javascript代码。

我需要取出最后一个逗号,所以我可以完成其余的代码...

3 个答案:

答案 0 :(得分:3)

我喜欢使用数组:

$query = ...;
$out = Array();
while($row = mysql_fetch_assoc($query)) {
    $out[] = "'".$row['provider_id']."':'".$row['company_name']."'";
}
echo implode(",",$out);

看起来你正试图输出某种JSON,所以也许你可以使用:

$query = ...;
$out = Array();
while($row = mysql_fetch_assoc($query)) {
    $out[$row['provider_id']] = $row['company_name'];
}
echo json_encode($out);

答案 1 :(得分:2)

所以我通常只是把这样的东西堆成一个数组然后内爆:

$parts = array();
while($row = mysql_fetch_array($query)){
    $parts[] =  "'".$row['provider_id']."':'".$row['company_name']."'";

}

echo implode(',', $parts);

那说它看起来像是在输出JSON字符串的主体。如果是这样,你不应该手动构建它,你应该使用json_encode

$data = array();
while($row = mysql_fetch_array($query)){
    $data[$row['provider_id']] = $row['company_name'];

}

echo json_encode($data);

答案 2 :(得分:1)

$query = mysql_query("SELECT Provider.provider_id, provider.company_name FROM Provider");
$result = "";
while($row = mysql_fetch_array($query)){
    $result .= "'".$row['provider_id']."':'".$row['company_name']."',";
}
$result = rtrim($result, ',');

OR

$query = mysql_query("SELECT Provider.provider_id, provider.company_name FROM Provider");
$result = array;
while($row = mysql_fetch_array($query)){
    $result[] = "'".$row['provider_id']."':'".$row['company_name']."',";
}
$result = implode(',' $result);

OR

获取记录数(mysql_num_rows($query)),当您点击最后一行时,只需执行您想要的操作