как показать значения, разделенные запятыми, используя codeigniter - PullRequest
0 голосов
/ 05 февраля 2020

Я использую codeigniter, получая значения через запятую, но не работает нормально. я делюсь всем кодом, как первый вывод foreach после стробирования, результат не показывает значения, разделенные запятыми, чем второй вывод значения массива show aftra нужно выводить значения, разделенные запятыми, такие как 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
            )

    )

Мне нужен вывод

SLR, ACCN

Ответы [ 3 ]

1 голос
/ 05 февраля 2020

Вы можете использовать функцию 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'));
0 голосов
/ 05 февраля 2020

Пожалуйста, используйте функцию array_map, затем используйте функцию implode

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

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

echo $List;
0 голосов
/ 05 февраля 2020

Вы можете использовать функцию implode для получения значений через запятую.

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

Вывод будет:

ACCN,SLR,CN

Редактировать код соответственно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...