【问题标题】:how to show comma separated values using codeigniter如何使用codeigniter显示逗号分隔值
【发布时间】:2020-05-21 00:19:22
【问题描述】:

我正在使用 codeigniter 获取逗号分隔值,但无法正常工作。我正在共享所有代码,例如门控结果后的第一个输出 foreach 不显示逗号分隔值而不是第二个显示数组打印值之后需要输出逗号分隔值,例如 SLR,ACCN

型号代码在这里

public function display_coach_name($coachID='')
            {   
        $db2 = $this->load->database('rail',TRUE);
        $ids = explode(',',$coachID);
        $db2->select('coach_name');
        $db2->from('mcc_coach');
        $db2->where_in('id',$ids);
        $query = $db2->get();
        //echo $db2->last_query(); die;

        if ($query->num_rows() > 0):

        return $query->result_array();
        else:
            return 0;
        endif;
            }

输出

<?php foreach ($coachname as $val){ echo $pizza = $val['coach_name']; }?>

//---------------------foreach-----------------输出---

SLRACCN

数组打印

$coachname = $this->rail_ceil_model->display_coach_name($coachID);
echo"<pre>";
print_r($coachname);
//---------------------output----------------------
    Array
    (
        [0] => Array
            (
                [coach_name] => GS
            )

        [1] => Array
            (
                [coach_name] => SLR
            )

    )

    Array
    (
        [0] => Array
            (
                [coach_name] => GS
            )

        [1] => Array
            (
                [coach_name] => SLR
            )

    )

    Array
    (
        [0] => Array
            (
                [coach_name] => GS
            )

        [1] => Array
            (
                [coach_name] => SLR
            )

    )

    Array
    (
        [0] => Array
            (
                [coach_name] => GS
            )

        [1] => Array
            (
                [coach_name] => SLR
            )

    )

我需要输出

单反,ACN

【问题讨论】:

  • 你想要数组中的逗号分隔值吗?
  • 是的,先生,我正在分享所有问题和输出结果
  • 我需要像 (SLR,ACCN) 这样的输出结果

标签: php codeigniter


【解决方案1】:

您可以使用 implode 函数将数组转换为逗号分隔值

$coachname = $this->rail_ceil_model->display_coach_name($coachID);
foreach($coachname as $val){
if(is_array($val)){
   $list .= $val['coach_name'].',';        
}}

print_r(substr ( $list , 0 , strlen($list) -1 )); 

$coachname = $this->rail_ceil_model->display_coach_name($coachID);
print_r(implode(', ', array_map('coach_name', $coachname))); 

echo implode(', ', array_column($coachname, 'coach_name'));

【讨论】:

  • 遇到 PHP 错误严重性:通知消息:数组到字符串的转换文件名:views/assign_train.php 行号:72
【解决方案2】:

您可以使用implode 函数来获取逗号分隔值。

<?php
$coachname = array("ACCN", "SLR", "CN");
$new = implode(',',$coachname);
echo $new;
?>

输出将是:

ACCN,SLR,CN

相应地编辑您的代码。

【讨论】:

  • $coachname = array("ACCN", "SLR", "CN"); ?
  • 我得到的只是数组显示在表单上的值如何获取像 $coachname = array("ACCN", "SLR", "CN"); 之类的值?
【解决方案3】:

请使用 array_map 函数,然后使用 implode 函数

$coachname_separated = array_map (function($value){
    return $value['coach_name'];
} , $coachname);

$List = implode(', ', $coachname_separated); 

echo $List;

【讨论】:

    猜你喜欢
    • 2020-05-31
    • 2016-07-12
    • 2019-05-14
    • 2019-12-02
    • 2022-12-01
    • 2013-05-31
    • 2014-04-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多