序列中的PHP数组值

序列中的PHP数组值,php,arrays,string,Php,Arrays,String,嗨,我正在从我的数据库检索值到我的网页。 这是我的密码 foreach ($rows as $r) { echo $r->title; } 现在我想把我所有的标题值保存在一个变量中,例如用逗号分隔 $new_var = title_1,title_2,title_3; 我该怎么做???使用内爆: $new_var = array(); foreach ($rows as $r) { echo $r->title; $new_var[] = $r->

嗨,我正在从我的数据库检索值到我的网页。 这是我的密码

foreach ($rows as $r) { 
    echo $r->title;
}
现在我想把我所有的标题值保存在一个变量中,例如用逗号分隔

$new_var = title_1,title_2,title_3;
我该怎么做???

使用内爆:

$new_var = array();
foreach ($rows as $r) { 
    echo $r->title;
    $new_var[] = $r->title;
}
$new_var = implode(',',$new_var);
使用append

 $s='', 
   foreach ($rows as $r)
            { 
     $s.=$r->title.',';// for title1,title2
    // $s.="'".$r->title."'".","; // if you want 'title1','title2'
    //or    use like $s.="'$r->title',"; 
     } 
     $s=  substr($s, 0,-1);//remove last comma
   echo $s;


使用内爆。这是一种快速、简单的方法,可以处理必须用其他方法修复的尾随逗号问题。

如果您从MySQL获取值,这可能是一种有用且优化的方法

这不是对你问题的回答,只是为了另一个选择

注意该组存在限制,请在查询超过1028个字符之前进行检查

请参考这个例子


您可以在不使用明显的循环usnig的情况下执行此操作


可以使用字符串连接“,”和内爆

$a=array();
foreach ($rows as $r) {   
    $a[]="'".$r->title."'";
}
echo implode(",", $a);

解释你确定吗?@Rikesh,对不起:)
内爆
还是不正确。找出答案。如果我想像$s='title1','title2'那样添加它们,我该怎么做?你想像什么样添加它们?请再次查看答案。使用像$s='s''$r->title',';您希望
$new\u var
成为
字符串
值还是
数组
值?
$items = array();
foreach ($rows as $r)
        { 

$items[] = $r->title;

}

$new_var = implode(",", $items);
CREATE TABLE services (
id INT UNSIGNED NOT NULL,
client_id INT UNSIGNED NOT NULL,
KEY (id));

INSERT INTO services
VALUES (1,1),(1,2),(3,5),(3,6),(3,7);

SELECT id,client_id FROM services WHERE id = 3;

+----+-----------+
| id | client_id |
+----+-----------+
|  3 |         5 |
|  3 |         6 |
|  3 |         7 |
+----+-----------+

SELECT id,GROUP_CONCAT(client_id) FROM services WHERE id = 3 GROUP BY id;

+----+-------------------------+
| id | GROUP_CONCAT(client_id) |
+----+-------------------------+
|  3 | 5,6,7                   |
+----+-------------------------+
$test_array = [(object) ['title' => 1], (object) ['title' => 2], (object) ['title' => 3]];

$result = implode(',', array_map(function($item)
            { return $item->title; }, $test_array));

var_dump($result); // string(5) "1,2,3"
$a=array();
foreach ($rows as $r) {   
    $a[]="'".$r->title."'";
}
echo implode(",", $a);