如何将多个值合并为一个?

3

如何将多个值合并成一个字符串?

我有以下合并方法:

$a = array("".$_POST['questionid']."","$qid");
$b = array("".$_POST['AnswerID']."","$ans");
$c = array("".$_POST['timetaken']."","$time");

$comma = implode(",",$a);
echo "$comma";

它返回:1,2并打印a,b的值

    $comma = implode(",",$a);
    echo "$comma";
    $comma1 = implode(",",$b);
    echo "$comma1";

它给出:1,34,2 如何打印出 1,2,3,4

3个回答

4

为什么不自己将 , 添加到变量 $b 中?

更改为

$comma1 = implode(",",$b);

进入

$b[0] = ",".$b[0];
$comma1 = implode(",",$b);
echo $comma1;

第二种方法: - 其次,您可以使用array_merge()合并数组,然后通过,进行implode

$comma = implode(",", array_merge($a, $b));
echo $comma;

谢谢你的回答!但是它没有起作用,我得到了错误:`注意:在C:\xampp\htdocs\N\exam\exam\DOCS\Insert.php的第75行中进行了数组转换为字符串警告:在C:\xampp\htdocs\N\exam\exam\DOCS\Insert.php的第75行传递了无效参数 implode() 1,1` - Naveen mutharasi
@user5789755我已更新我的答案。我更喜欢您使用第二种方法。 - Muhammad Hassaan
好的,它正在运作。如何将这些值分别插入到数据库中的不同列中,例如:'a' 列中的值为 a 的值,'b' 列中的值为 b 的值。 - Naveen mutharasi
很简单,您可以像这样进行 (a, b) VALUES ($a, $b) - Muhammad Hassaan

2
您可以使用array_merge()函数首先合并所有数组,然后再将它们连接起来。像这样:
$comma = implode(",", array_merge($a, $b));

1

使用array_merge函数将$a$b合并,然后对序列使用sort()函数,再使用implode函数将其转换为1,3,4,2

示例:

$a = array($_POST['questionid'],$qid);
$b = array($_POST['AnswerID'],$ans); 

// merge both
$merge = array_merge($a,$b);

// for ASC order
sort($merge);
$comma = implode(",",$merge); 
echo $comma; //1,2,3,4

您代码中的问题:

您在两个implode()之间没有使用逗号,因此您得到了1,34,2。

现在,如果您需要按顺序打印,您需要使用sort();


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接