php - 用逗号分隔列

标签 php mysql

我可以用逗号分隔连接列,但是如果第二列为空,如何删除逗号? 在下面,我有 2 列我想加入 otot2 和 otot3 1.如果otot3为空,如何在otot2后面不显示逗号? 2.如果 otot2 和 otot 3 为空,如何不显示任何逗号? 3. otot2和otot3灵活(并不总是有数据)

这里是我的输出查询的 php 代码:

    if(mysqli_num_rows($hasil) > 0)
{   
    $response = array();
    while($data = mysqli_fetch_array($hasil))
    {
        $h['main muscle'] = $data['otot1'];
        $h['other muscle'] = $data['otot2'].', '.$data['otot3'];

        array_push($response, $h);
    }
    $response["success"];
    echo json_encode($response);

最佳答案

一个简单的解决方案是 -

$response = array();
while($data = mysqli_fetch_array($hasil))
{
    // other code

    $temp = array($data['otot2'], $data['otot3']); // Store them in array
    $temp = array_filter($temp); // remove empty values
    $h['other muscle'] = implode(',', $temp); // implode them with (,)

    // Other codes

    array_push($response, $h);
}

通过使用 array_filterimplode,您不必像 array_filter 那样担心 ,删除空值,如果数组中有 2 个值,则字符串将以 , 分隔,否则不会。

或者你也可以尝试这个

$h['other muscle'] = $data['otot2'];
if($data['otot3'] !== null)
    $h['other muscle'] .= ', ' . $data['otot3']; // Concatenate

Demo

关于php - 用逗号分隔列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36881499/

相关文章:

javascript - 使用 mpdf 通过 AJAX 生成 PDF

MySQL Workbench > 插件 > 实用程序 > 重新格式化 SQL 查询

php - 每次加载页面时如何更新 MySQL 表?

java - 如何在特定事件上执行更新?

mysql - 在不同的第二列上获取第一列的总和

php - 是否可以使用 php/html 编写的应用程序页面将文件上传到 GCP 上的计算引擎?

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

使用命名空间时找不到 PHP 类

php - Laravel Forge 计划任务上的 504 网关超时错误

MySQL 子查询使用 NULLIF 截断结果